汇编笔记: 源码 补码 反码

一. 补码:

-8的补码是:11111000,因为-8超出了4位二进制所能表达的范围,所以必须要用8位二进制表示。

负整数的补码计算是将其原码除符号位外的所有位取反后加1,-8补码的计算过程是:-8对应正数8(00001000)→所有位取反(11110111)→加1(11111000)。

-126的补码:
126的补码为 0111 1110, 给他取反,1000 0001, 再加1
就是 1000 0010

即:|x|补 <–求补—> |-x|补

注:1. [x + y]补 = [x]补 + [y]补
注:2. [x + y]补 = [x]补 + [-y]补

在这里插入图片描述

二. 数的范围

  1. 无符号数: 8位(0~255) 16位(0~65535)
  2. 有符号位:8位(-128~127) 16位(-32768~32768)

注(由补码推原来的数):1000 0000是-128,而1111 1111是-1
我们可以这样算,第一位是符号位,将后面的7位二进制转为十进制,然后用128减去,再加符号位
比如1111 1111,7位二进制111 1111是127,128-127=1,所以就是-1
比如1000 0001,7位二进制是000 0001,就是1,128-1=127,就是-127

三. 浮点数在计算机中的储存

27.5的二进制为11011.1

1.10111*2^4

尾数(小数点后的数)10111,补够23位 1011 1000 0000 0000 0000 000

指数:4,加上127,就是131,二进制1000 0011

用二进制表示就是 (符号数位1位)0 (指数位8位)1000 0011 (尾数位23位)1011 1000 0000 0000 0000 000

写成二进制标准形式:0100 0001 1101 1100 0000 0000 0000 0000

四. BCD码

  1. 压缩型BCD码:一个字节可存放一个两位十进制数,其中高四位存放十位数字,低四位存放个位数字。
    如:56的压缩型8421 BCD码是0101 0110;

  2. 非压缩型BCD码:一个字节可存放一个一位十进制数,其中高字节为0,低字节的低四位存放个位。
    如:5的非压缩型BCD码是0000 0101,必须存放在一个字节中,56的非压缩型BCD码是00000101 00000110,必须存放在一个字中。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值