[汇编]数的补码表示及其加减运算

[汇编]数的补码表示及其加减运算  补码表示法

正数的补码表示:与原码表示相同

[+1]补码 =0000 0001 = 01H
[+127]补码 =0111 1111 = 7FH
[+0]补码 =0000 0000 = 0H

  负数的补码表示:相应的正数按位求反,末位加1即为该负数的补码表示
  
  求负数补码表示的方法:
  (1)写出与该负数相对应的正数的补码
  (2)按位求反
  (3)末位加一

  例:假设机器字长为8位,求-46的补码。
    + 46的补码表示为: 0010 1110
    按位求反:     1101 0001
    末位加一      1101 0010
    所以,[-46]补码 = D2H

  符号扩展:是指一个数从位数较少扩展到位数较多,如从8位扩展到16位,或从16位扩展到32位。

  对于用补码表示的数,正数的符号扩展在前面补0,负数的符号扩展在前面补1,假设机器字长为16位,[+46]补码 = 002EH,[-46]补码 = FFD2H。

n位补码的表数范围是:

2^(n-1)≤N≤2^(n-1)-1 
8位二进制的表数范围是 -128≤N≤+127,
16位二进制的表数范围是 -32768≤N≤+32767。


补码的加、减法


  对一个二进制数按位求反、末位加一的运算称为求补运算.

  在机器里,补码减法是通过对减数求补后把减法转换为加法进行的。符号位参加运算,能自动得到正确结果。

  在某些情况下,要处理的数全是正数(比如表示地址的数),就没有必要保留符号位了,可以把最高有效位也作为数值处理,这样的数称为无符号数。n位无符号数的表数范围是0≤N≤2^(n)-1 。

存储器分段管理

段地址 × 16d + 偏移地址 = 物理地址
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值