计算机系统 笔记(2) 信息的表示和处理

每台计算机都有一个字长,指明指针数据的标称大小。因为虚拟地址是以这样的一个字来编码的,所以字长决定了虚拟地址空间的最大大小。也就是说,对于一个字长为w位的机器而言,虚拟地址范围是 0 ~ 2的w平方 - 1,程序最多访问 2的w平方 字节。例如32位的机器虚拟地址空间为4GB。
  • 32位和64位数据类型区别
有区别的类型:(前32,后64)
(1)指针类型:4,8
(2)long类型:4,8
造成32位移植到64位出现问题的原因?
例如,32位经常用int来存储一个指针,64位就会溢出。

  • 掩码
掩码是一个位模式,顾名思义,就是通过与这个掩码数值运算,掩去不需要的数值。
例如掩码0xff,与此掩码进行与运算(&),讲会得到有效的后八位。
特别的,~0 会生成一个全1的掩码,这样生成的掩码可移植性强。
  • 补码
补码是一种机器存储方式。也就是说在我们看到的整数数值,在机器层面是以补码的形式存储的,补码的意义在于统一了加减法,减法也适用加法,而不需要额外的硬件。正整数的补码是自己,负整数的补码是取反加1,符号位不变。
原码 补码
举例:5 00000101 -> 00000101
         -5 10000101 -> 11111011
相加:0 10001010 -> 00000000

显然,补码相加得到的是想要的结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值