【读书笔记】CSAPP第二章

CSAPP第二章读书笔记
摘要由CSDN通过智能技术生成


信息存储

上章曾提到,信息就是位+上下文,计算机存储的信息在底层无非就是01序列,因此二进制是计算机存储、编码和操作信息的核心。
计算机使用8位的块作为一个字节(byte),代替单独的位作为最小可寻址的内存单元。而内存的地址是基于虚拟内存(virtual memory) 的抽象概念(第九章),将各种存储设备结合起来提供一个直觉上统一的字节数组。

计算机字长

计算机字长,也就是我们平时常见的说法:32位机、64位机,这里的32和64就是计算机的字长(word size) ,代表指针数据的标称大小(指针的长度),即上面说的虚拟内存地址的编码的字长。

比如w=32位字长的机器,它的可寻址空间范围是0~2w -1,也就是说字长决定虚拟地址空间的最大大小。类似于9位十进制编码的qq号,它的寻址空间就是从0到999999999,每个空间对应一个用户(字节)

寻址和字节顺序

所有的程序对象都是一个字节序列,对于跨越多字节的对象,比如4个字节的int型变量,它在机器上存储为连续的字节序列,它的地址就是它所跨域字节中最小的地址。关于这些字节在内存中的排列规则,根据机器类型的不同分为大端法和小端法,比如0x01234567

大端法

0x100 0x101 0x102 0x103
01 23 45 67

小端法

0x100 0x101 0x102 0x103
67 45 23 01

位运算

将在二元集合{0,1}上定义的布尔运算拓展到位向量,就是位级布尔运算,它的一个常见用法就是实现掩码操作,对控制信号进行使能或屏蔽。


整数表示

计算机中的整数也是位的一种编码,根据编码方式的不同可以分为两种,一种可以表示非负数即无符号数&#x

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值