对满足0 =< x, y<2w的x和y有:

整数的运算

例如:无符号数65535 + 1 为10000000000000000,由于超过16位,所以截断后0~15位都是0,因此结果为0

整数的运算

结果为0

 

补码加法运算

补码加法运算就是先按照无符号加法进行运算,而后在进行无符号和有符号的转换

   整数的运算

对满足 -2w-1  <= x,y <= 2w-1-1的整数x和y, 有

 

整数的运算

例如:-35768 + (- 1)要先把两个数转换为无符号数,进行运算后再转为有符号数

整数的运算

结果为2147483647

无符号数乘法

将一个无符号数截断为w位等价于计算该值摸2w

整数的运算

整数的运算

结果为65534

补码乘法

将一个补码数截断为w位相当于先计算该值摸2w,再把无符号数转换为补码

补码乘法相当于先计算两个值的乘积,再将该值模2w,再把无符号数转换为补码

整数的运算

整数的运算

结果为

0

14

 

乘以常数

左移一个数值等于执行一个与2的幂相乘的无符号乘法,低位补0

除以常数

除以 2 的幂可以用向右移位来运算,无符号除法使用逻辑移位,补码除法使用算术移位

 

相关文章:

  • 2021-07-11
  • 2022-12-23
  • 2021-07-29
  • 2021-12-21
  • 2022-12-23
  • 2021-11-23
猜你喜欢
  • 2022-12-23
  • 2021-06-02
  • 2022-12-23
  • 2021-11-09
  • 2021-12-04
  • 2021-12-19
相关资源
相似解决方案