Poedu_计算机科学导论_Lesson02_2_2017-5-8

-注明

  •    由于计算机不能做减法,因此需要将数值变成负数后相加。如5+5需变成5+(-5).
  •   负数是以补码形式存储,0没有补码。数值的首位为符号位。
  •    由于二进制的设计,所以计算机中的小数不可能达到准确的,只能达到部分准确。想安全的运算有两种办法
  1.    不拿小数来运算,而是当成整数来运算。(属于极端情况)
  2.    忽略后面不影响程序的小数部分。

-补码

   做减法时,由于计算机只能做累加而不能做减法,所以我们需要用到补码形式来得到正确的值。
   补码是将数值确定一个长度后将数值取反加一。 这样得到的值与任何值相加都是没有任何问题。
   而 你的长度将决定你的数值范围
   例如:(数值)0001→(取反后)1110→(+1)1111.

-左移与右移

  左移用来做乘法,将数值左移几位相当于乘以2的几次方,空位补0(左移3位=2的三次方)
  右移用来做除法,而右移有两种情况,逻辑右移与算术右移。
 
逻辑右移 在右移时任何情况都补0
逻辑右移 在右移时根据首位来决定补0或补1

-其他运算(非,与,或,异或)

逻辑运算(非,与,或,异或)
   
  非  取反,0变1,1变0
  与 只有两者都为真时为真。1  ·   1=1
  或 其中一个为真是就为真
异或 两者之间相同则相斥,0   ·   0=0 ;  0    ·       1=1 ; 1      ·      0=1; 1      ·       1=0

猜你喜欢

转载自blog.csdn.net/Black_Melody/article/details/71405260