《程序是怎样跑起来的》第二章

第二章
数据是用二进制数表示的
计算机内部是由集成电路构成的,单集成电路的引脚只有0v或5v两个状态,因此只能用过二进制数来处理。
二进制数的位数一般是8位、16位、32位……也就是8的倍数,这是因为计算机所处理的信息的基本单位是8位二进制数。8位二进制数被称为一个字节。字节是最基本的信息计量单位。位是最小单位:字节是基本单位。内存和磁盘都使用字节单位来存储和读写数据,使用位单位则无法读写数据。因此,字节是信息的基本单位。
二进制数中表示负数值时,一般会把最高位作为符号来使用,因比我们把这个最高位称为符号位。符号位是0时表示正数,符号位是时表示负数。负数-1二进制表示为11111111。即绝对值的二进制数取反后在加一的形式表示,这种用正数表示负数即补数。(用加法表示减法1+11111111为进位,但最高位溢出,因此直接忽略掉编程了00000000,即1+(-1)为0).
逻辑右移
高位补零,溢出低位省略。例如:霓虹灯。

算术右移(感觉讲解非常巧妙,因此直接引用)

符号扩充
将8为转换为16位或32位是时正数补零,负数补一即可。

posted @   咲张  阅读(11)  评论(1编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示