2018-2019-1 20165320 《信息安全系统设计基础》第二周学习总结

第二章学习总结

1、信息处理

  • 64位机器运行32位机器编译的程序

      gcc -m32 prog.c
    
  • 一个字长为w位的机器,虚拟地址的范围为0~2的w方-1

  • C语言允许多种关键字的顺序

  • 多字节对象被存储为连续的字节序列,对象的地址为所使用字节中最小的地址

  • 小端:最低有效字节在最前面

    大端:最高有效字节在最前面

  • 移位运算:

    逻辑移位:补0

    算术移位:补最高有效位的值

2、数据表示

  • 无符号数

    B2U = 每一位的权值之和

  • 有符号数

    B2T = 最高有效位代表正负值+各位的权值

  • 补码与无符号数的相互转换

  • 数字的扩展

    无符号数的零扩展与补码数的符号扩展

  • 数字的截断

3、整数运算

  • 无符号加法:
    两个非负整数相加的范围:

      0<=x+y<=2的w方-2
    

    如果出现溢出的情况要模一个2的w方

  • 有符号数的加法

    转换为两个数的补码相加

  • 无符号乘法

    xy = (xy)mod2的w方

  • 补码乘法

4、浮点数

  • IEEE浮点表示

    用 V = (-1)s * M * 2 E

    符号决定正负,M为二进制小数,E是阶码

  • C语言中的浮点数

    double与float 双精度与单精度

    int、float、double转化时有可能出现数据丢失的情况

posted @ 2018-09-30 19:32  Gst丶Paul  阅读(119)  评论(0编辑  收藏  举报