《程序是怎么跑起来的》第二章随笔

IC(集成电路)
形状 蜈蚣型(看了 感觉有点像蟑螂
针盘型(找不到
IC的引脚 只有 0V和5V两种状态
所以只能表示两种状态
因为IC的这个特性,决定了计算机的信息数据只能用二进制来处理。
计算机不会区分台式数值、文字、还是某种图片的模式等,而是根据根据指示来进行信息的处理(运算)
可以视为“ ‘ ’”文字在显示器上印刷出来00100111-->黑黑白黑黑白白白
也可以进行纯粹的数值加法运算
位权
数字的位数不同,位权也不同
十进制
100......
第一位是10的0次幂
第二位是10的1次幂
第三位是10的2次幂
...
二进制
第一位是2的0次幂=1 1
第二位是2的1次幂=2 10
第三位是2的2次幂=4 100
...
“OO的XX次幂”表示位权
十进制的OO部分为10,二进制的为2,这个称为基数
XX部分在任何进制数中都是“数的位数-1”
二进制逢二进一
十进制逢十进一
移位运算
讲二进制数值的各数位向左右移位(shift=移位)
左移(向高位方向)右移(向低位方向)两种
一次运算中可进行多位数的移位操作
<<表示左移

表示右移
在运算符的左侧表示被位移的值
右侧表示要位移的位数
前39
00100111
后10,011100
156
二进制中表示负数值时一般把最高位作为符号来使用
为0时表示正数
为1时表示负数
补数就是用整数来表示负数
用法
需要将二进制数的各数位的数值全部取反,然后再讲结果加一
所以-1的算法为
1(十进制)
00000001
取反
11111111
-1(十进制)
对于溢出的位计算机会直接忽略掉
1+(-1)=0
0000001+11111111=1 00000000(多一位忽略)
当二进制的值表示图形模式而非数值时,移位需要再最高位补0 称为逻辑右移
讲二进制作为带符号的数值进行算数是,位移后要在最高位填充移位前符号位的值(0或1)称为算数右移
符号扩充就是指在保持不变的前提下将器转换成16位和32位的二进制数的二进制数
算数将二进制数表示的信息作为四则运算的数值来处理就是算术。
而像图形模式那样,讲数值处理为单纯的0和1的罗列就是逻辑

posted @ 2024-01-28 20:40  七天世界  阅读(12)  评论(0编辑  收藏  举报