CSAPP第一部分

Bits,Bytes, and Integers

& && , | ||, ^ !区别

后者判断true或者false,前者都是逻辑运算

例如 !0x41=0x00 因为0x41不是0为true,取反是false就是0

!0x41=0x01

移位

逻辑右移不带符号,算数右移带符号,目的是为了负数在机器表示来设计的

数字范围

Tmin =Tmax+1,

Umax=2*Tmax+1,(Tmax左移再加1)

符号扩展

-2

->三位110

->四位1110

->五位11110

->六位111110

符号截取

无符号逻辑

11011五位=27

1011四位 =11=27%16 16=2^4最高位的1所在

011三位 =3=11%8

有符号

1 0011五位= -13

0011 四位= +3=19%16 16是10011的无符号形式