前端开发入门到精通的在线学习网站

网站首页 > 资源文章 正文

软件设计(十三)-原码、反码、补码、移码

qiguaw 2024-09-08 06:38:47 资源文章 26 ℃ 0 评论

下面把一个数转成二进制表达形式

原码:

数值1 : 0000 0001

数值-1 : 1000 0001

1 + (- 1) : 1000 0010

这是8个bit,其中首位代表符号,0代表正数,1代表负数。相加后等于-2,这显然是不对的。 所以原码不能在机器里直接相关运算。

范围:-127~127


反码:

数值1: 0000 0001

数值-1: 1111 1110

1 +(-1):1111 1111

正数则反码和原码一致,负数除了符号位,其他位置取反,这时候相加等于-0。(为什么等于-0,首位1不变,代表-数,后面7个1取反,则是1000 0000,所以代表-0)

范围:-127~127


补码:

数值1: 0000 0001

数值-1: 1111 1111

1+(-1):0000 0000

正数不变,负数尾数加1,这时候就算出是0。

范围:-128~127


移码:(一般作用于浮点运算当中的解码)

数值1: 1000 0001

数值-1: 0111 1111

1+(-1):1000 0000

首位在补码的基础上取反,移码中 1代表正数,0代表负数,所以相加之后还是0。



1、表达式采用逆波兰式表示时,利用(栈)进行求值。

逆波兰表达式是把运算符号写在对象的后面,例如a+b写成ab+,所以也称后缀式。


2、网络管理员通过命令行方式对路由器进行管理,需要确保ID、口令和会话内容的保密性,应采用的访问方式是 SSH。

SHH是建立在应用层和传输层基础上的安全协议。SSH(Secure Shell)

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表