原码、补码其实很简单

算术运算中的数值都带有符号以表示正负
计算机中用0表示正,用1表示负
原来带有“+”、 “-”号的数据表示为真值
真值:x= +1011 y=-1011
机器数: x= 01011 y=11011

原码
二进制真值X的原码编码方法(n位)
 对最高位对符号部分进行编码
   用0表示’+’ ,用1表示’-’
 剩下的(n-1)位对数字部分进行编码
    编码与X的数字相同
  如果X的数字不足(n-1)位,则高位补0,补足至(n-1)位

0原码有2个
   +0 :0000…0
   -0 :1000…0
   
假设用8位的原码表示

tablexy
真值数+101-1010
最高位处理01
原码0000010110001010

#####优点
简单直观,容易理解
#####缺点
做加法和剑法运算较为复杂,要对符号位和数值的绝对值大小进行判断

###原码转补码

#####符号部分同原码
数的最高位为符号位,0表示证书,1表示为负数
#####数字部分与它的符号位相关
对于正数,补码数字部分和原码数字部分相同
对于负数,补码数字部分是讲原码数字部分按位取反在加1
8位

真值原码补码
+11010000110100001101
-11101000111011110010
(正数补码原码一样)负数符号位一样,数字部分取反+1

###补码转原码
数字位取反+1(符号位除外)(针对于负数)

#####例如

补码11110010转原码 数字位按位取反+1
符号位不变
1 1110010 取反 等于= 0001101 在加1
         = 0001110 (次数得到原码的数字位)
//最终结果 把符号位加上
10001110 就是他的原码了


###补码
性质:补码表示法可以建华加法运算,并且可以将减法变成加法

这里写图片描述

#补码的运算

这里写图片描述
这里写图片描述
这里写图片描述

###补码运算

符号位也参加运算
不用考虑符号位的进位问题

**解释:**因为R位 位模式的符号位产生进位的话,也就是超过R位了.这时候。我们以后没有位置来存放,进位的数了.所以可以直接丢弃,并不影响结果

这里写图片描述


####乘法

这里写图片描述

乘法其实,可以也是加法
事实上指的都是被乘数的移位和相加

####除法
这里写图片描述


##拓展
3位位模式 2^3 =8

补码
000+0
001+1
010+2
011+3
100-4 //取反+1 等于100 符号位为-
101-3
110-2
111-1
101解释101求原码 101 符号位是1 数字是01 取反+1 等于11 符号位为负数 也就是-11 等于-3
三位数模式表示的数[-4,+3]

###对于n位- 位模式来而言
他表示最小的数为:-2^(n-1),最大的数 +2^(n-1) -1
+起来是 2^n次方

求一波关注

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值