1)原码表示法

原码表示法是机器数的一种简单的表示法。其符号位用0表示正号,用:表示负号,数值一般用二进制形式表示。设有一数为x,则原码表示可记作[x]

例如,X1= +1010110

X2= 一1001010

其原码记作:

[X1=[+1010110]=01010110

[X2=[-1001010]=11001010

原码表示数的范围与二进制位数有关。当用8位二进制来表示小数原码时,其表示范围:

最大值为0.1111111,其真值约为(0.99)10

最小值为1.1111111,其真值约为(一0.99)10

当用8位二进制来表示整数原码时,其表示范围:

最大值为01111111,其真值为(127)10

最小值为11111111,其真值为(-127)10

在原码表示法中,对0有两种表示形式:

[+0]=00000000

[-0]=10000000

 

2)补码表示法

机器数的补码可由原码得到。如果机器数是正数,则该机器数的补码与原码一样;(转自:图码网)如果机器数是负数,则该机器数的补码是对它的原码(除符号位外)各位取反,并在未位加1而得到的。设有一数X,则X的补码表示记作[X]

例如,[X1]=+1010110

[X2]= 一1001010

[X1]=01010110

[X1]=01010110

即      [X1]=[X1]=01010110

[X2]= 11001010

[X2]=10110101+1=10110110

补码表示数的范围与二进制位数有关。当采用8位二进制表示时,小数补码的表示范围:

最大为0.1111111,其真值为(0.99)10

最小为1.0000000,其真值为(一1)10

采用8位二进制表示时,整数补码的表示范围:

最大为01111111,其真值为(127)10

最小为10000000,其真值为(一128)10

在补码表示法中,0只有一种表示形式:

[+0]=00000000

[+0]=11111111+1=00000000(由于受设备字长的限制,最后的进位丢失)

所以有[+0]=[+0]=00000000

 

 

3)反码表示法

机器数的反码可由原码得到。如果机器数是正数,则该机器数的反码与原码一样;如果机器数是负数,则该机器数的反码是对它的原码(符号位除外)各位取反而得到的。设有一数X,则X的反码表示记作[X]

例如:X1= +1010110

X2= 一1001010

[X1=01010110

[X1]=[X1=01010110

[X2]=11001010

[X2]=10110101

反码通常作为求补过程的中间形式,即在一个负数的反码的未位上加1,就得到了该负数的补码。

例1. 已知[X]=10011010,求[X]

分析如下:

由[X]求[X]的原则是:若机器数为正数,则[X]=[X];若机器数为负数,则该机器数的补码可对它的原码(符号位除外)所有位求反,再在未位加1而得到。现给定的机器数为负数,故有[X]=[X]十1,即

[X]=10011010

[X]=11100101

十)         1

 

[X]=11100110

 

例2. 已知[X]=11100110,求[X]

分析如下:

对于机器数为正数,则[X]=[X]

对于机器数为负数,则有[X]=[[X]

现给定的为负数,故有:

[X]=11100110

[[X]=10011001

十)         1

 

[[X]=10011010=[X]

转载于:https://www.cnblogs.com/hewenwu/articles/3615102.html

原码、补码、反码、1的补码相关推荐

  1. 转 :原码,反码,补码

    数值在计算机中是以补码的方式存储的,在探求为何计算机要使用补码之前, 让我们先了解原码, 反码和补码的概念. 对于一个数, 计算机要使用一定的编码方式进行存储. 原码, 反码, 补码是计算机存储一个具 ...

  2. 原码、反码、补码、移码存在的意义

    数值在计算机中表示形式为机器数,计算机只能识别0和1,使用的是二进制,而在日常生活中人们使用的是十进制,"正如亚里士多德早就指出的那样,今天十进制的广泛采用,只不过我们绝大多数人生来具有10 ...

  3. 关于原码、反码、补码、和求补区别总结

    文章目录 1. 原码 2. 反码 3. 补码 4. 移码 5. 补码和求补(NEG)的区别 6. 求补(NEG)运算的几个方法 7. 纯小数 8. 总结 1. 原码 某个数按照绝对值转换成的二进制数, ...

  4. 什么是原码、反码、补码?什么是按位与?范围数字按位与!

    前言:学过计算机基础的大家都知道什么是二进制,什么是"与"运算,这里先给大家复习一下. 举一个简单的例子: 5的二进制表示是0101(补齐4位) 7的二进制表示是0111(补齐4位 ...

  5. 关于计算机中二进制原码,反码,补码的简要解释

    原码,补码,反码的概念 正数原码:正数的原码为取绝对值的数转二进制,5的原码为   00000000   00000000   00000000    00000101 负数原码:负数的原码为取绝对值 ...

  6. 进制转换 位运算(包括补码、原码、反码、~0等一些零碎东西一次说清)

    我发现网上关于标题上的内容介绍的都很零碎,因此为了方便查找.也为了本人对这一部分的充分理解,就想着写一篇这样的博客(我分成了几个部分,以便查找): 一.进制转换 让我们先来看看各个进制的定义: 十进制 ...

  7. 6位有符号补码阵列乘法器_C/C++学习日记:原码、反码和补码

    一.什么是原码.反码和补码 我们知道,在计算机内部存储的带符号数都是以补码形式存储,用补码形式进行运算的.什么是一个数的补码?为什么要用补码?这要从数的原码.反码开始讲.我们以整型数为例,且假定字长为 ...

  8. 补码还原为原码c语言,C语言知识汇总 | 12-整数(有、无符号数)在内存中的存储——原码、反码与补码...

    加法和减法是计算机中最基本的运算,计算机时时刻刻都离不开它们,所以它们由硬件直接支持.为了提高加减法的运算效率,硬件电路要设计得尽量简单. 对于有符号数,内存要区分符号位和数值位,对于人脑来说,很容易 ...

  9. 原码,反码,补码,移码的概念以及各自的用途和优点

    1.原码 将最高位用作符号位(0表示正数,1表示负数),其余各位代表数值本身的绝对值的表示形式. 例如,假设用8位表示一个数,则+10的原码是00001010,-10的原码是10001010. 直接使 ...

  10. Java 数字用二进制表示,以及原码,反码,补码、负数的二进制表示

    首先我们要对原码.反码和补码有个了解: 1.所谓原码就是二进制定点表示法,即最高位为符号位,"0"表示正,"1"表示负,其余位表示数值的大小. 2.反码表示法规 ...

最新文章

  1. mysqldump定时备份数据库
  2. c语言实现4x4随机字母,求用C++编写一个4x4矩阵运算类(元素float),实现转置和相乘,具体见补充,在线等!谢谢啦~...
  3. sql server 2008安装_性能不够?基于时序数据库的Zabbix 5.2安装指南
  4. 深入浅出的webpack4构建工具--webpack4+react构建环境(二十)
  5. qt结构体嵌套结构体方法_9.2 C++结构体类型变量
  6. ROS(Robot Operating System)笔记 : 1.使用launch file在gazebo中生成urdf机器人
  7. HDU-4089 Activation (概率DP求概率)
  8. 第46课 精益求精 《小学生C++趣味编程》
  9. php软件开发--yii2框架搭建及gitlib同步线上网站
  10. Java设计模式之七大结构型模式(附实例和详解)
  11. Net作业调度(二) -CrystalQuartz远程管理
  12. grafana高可用架构
  13. 100个开源游戏-街机类、棋牌类、休闲益智类、教育类、音乐类、RPG和AVG、策略类开源游戏【转】...
  14. Chloe.Orm多表连接查询 (二)
  15. 电脑远程vps时无法复制粘贴怎么办
  16. craig gentry_为Craig投票!
  17. img标签 src路径正确 但图片不显示
  18. 使用EasyPoi 导出简单的Excel表格。
  19. 怎样大幅度地提升硬盘的速度
  20. 白炽灯护眼还是LED护眼?盘点led护眼灯品牌排行

热门文章

  1. java基础(参数传递)
  2. 简单团队-爬虫豆瓣top250-项目总结
  3. Centos系统中彻底删除Mysql数据库
  4. 页面引用CSS和Javascript时,内联和外置的区别
  5. 如何正确解码用户的“玄学需求”?
  6. PMCAFF微分享 | 阿檬:如何设计好工具型软件?产品经理必备技能
  7. 冬日稻城亚丁,美得一塌糊涂!
  8. Perl输出复杂数据结构:Data::Dumper,Data::Dump,Data::Printer
  9. JavaBeans四个作用域 范围
  10. 关于props的注意事项!