开始备战软考已经一段时间了,这几天做了几套题,感觉很多细小的知识点自己掌握的还可以更牢靠,所以写博客理清一下自己的思维,这篇博客算是开端,先简单的介绍一下机器数的表示方法。

原码、反码、补码、移码的作用?

在计算机内,机器数有无符号和带符号数之分。无符号数表示正数,在机器数中没有符号位。位于无符号数,若约定小数点的位置在机器数的最低位之后,则是纯整数;若约定小数点的位置在机器数的最高位之前,则是纯小数。对于带符号数,机器数的最高位是表示正、负的符号位,其余位则表示数值。若约定小数点的位置在机器数的最低数值位之后,则是纯整数;若约定小数点的位置在机器数的最高数值位之前(符号位之后),则是纯小数。

为了便于运算,带符号位的机器数可采用原码、反码和补码等不同的编码方法,机器数的这些编码方法称为码制。

原码、反码、补码、移码如何表示?

举例:[+45]原=00101101       -45=10101101 (以下所有例子都为这两个数的变换)

原码:

原码表示法在数值前面增加了一位符号位(即最高位为符号位):正数该位为0,负数该位为1(0有两种表示:+0和-0),其余位表示数值的大小。

举例:[+45]原=00101101       [-45]原=10101101

反码: 反码是数值存储的一种,但是由于补码更能有效表现数字在计算机中的形式,所以多数计算机一般都不采用反码表示数。

反码表示法规定:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。

举例:[+45]反=00101101       [-45]反=11010010

补码:在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号位和数值域统一处理;同时,加法和减法也可以统一处理。此外,补码与原码相互转换,其运算过程是相同的,不需要额外的硬件电路。

反码表示法规定:正数的补码与其原码相同;一种简单的方式,符号位保持1不变,数值位从右边数第一个1及其右边的0保持不变,左边按位取反。也可以从反码推补码,就是在反码的基础上加1。

举例:[+45]补=00101101       [-45]补=11010011

移码:

移码(又叫增码)是符号位取反的补码,一般用做浮点数的阶码,引入的目的是为了保证浮点数的机器零为全0。这个不分正负。

举例:[+45]移=10101101       [-45]移=01010011

以上就是机器码的原码、反码、补码和移码的表示方法,其实这些表示方法都是为了让计算机的运算更加方便。

[软考]之原码、反码、补码和移码相关推荐

  1. 【软考学习2】数据表示——原码 反码 补码 移码

    原码 反码 补码 移码是软考必考的项目,所以需要对其概念.计算方式和取值范围进行总结. 零.使用场景 原码 反码 补码 移码都是计算机中表示数据的方式,各有所长,对于我们来说,都需要加以学习. 软考中 ...

  2. 原码反码补码总说N+1位范围

    问题场景: 最近在看计算机软考的东西,思考了一个问题,对于大牛来说,也许比较幼稚,但是我还是想记录一下. 问题描述: 为什么原码反码补码总说N+1位,用这个前提去讨论它的范围呢?说说N位不是很好嘛? ...

  3. 关于计算机中 原码, 反码, 补码 详解

    本篇文章讲解了计算机的原码, 反码和补码. 并且进行了深入探求了为何要使用反码和补码, 以及更进一步的论证了为何可以用反码, 补码的加法计算原码的减法. 论证部分如有不对的地方请各位牛人帮忙指正! 希 ...

  4. 原码, 反码, 补码, 移码 详解

    本篇文章讲解了计算机的原码, 反码和补码. 并且进行了深入探求了为何要使用反码和补码, 以及更进一步的论证了为何可以用反码, 补码的加法计算原码的减法. 论证部分如有不对的地方请各位牛人帮忙指正! 希 ...

  5. 关于 原码 反码 补码 位运算

    二进制 原码:最高位为符号位,0为正  1为负 正数的原码 反码 补码 都是相同的 反码:负数的反码为原码符号位不变 其它对应变化(1变0 0变1) 补码:等于 反码+1 3^-3 =? 运算过程 - ...

  6. 10.原码 反码 补码

    +7的原码:0000 0111 -7的原码:1000 0111   第一位0代表正数,1代表负数,第一位为符号位 +7的反码:0000 0111 正数反码和原码一样 -7的反码:1111 1000   ...

  7. java进制原码_Java 一一 进制、原码 反码 补码、移位操作

    进制 二进制 和 十进制 相互转换 十进制 和 十六进制 相互转换 原码,反码,补码 原码.反码.补码: 在计算机内, 有符号数有三种表示法: 原码, 反码, 补码. 所有的数据的运算都是采用 补码 ...

  8. 大端 小端 原码 反码 补码 及内存中的表现

    小端 和 大端 在内存中存储时,都是从内存的低地址往高地址存,即0x00000000 -> 0xffffffff 以汉字 "严"为例,Unicode码是4E25,需要两个字节 ...

  9. 原码 反码 补码 详解

    一. 机器数和真值 在学习原码, 反码和补码之前, 需要先了解机器数和真值的概念. 1.机器数 一个数在计算机中的二进制表示形式,  叫做这个数的机器数.机器数是带符号的,在计算机用一个数的最高位存放 ...

  10. python二进制反码例题_python中的进制转换和原码,反码,补码

    python中的进制转换和原码,反码,补码 计算机文件大小单位 b = bit 位(比特) B = Byte 字节 1Byte = 8 bit #一个字节等于8位 可以简写成 1B = 8b 1KB ...

最新文章

  1. android的NDK和java进行本地socket通信
  2. PHP会话管理——Session和Cookie
  3. MySQL中事务控制语句_Mysql事务控制语言
  4. 【bzoj4355】Play with sequence 线段树区间最值操作
  5. php 聚合广告平台,带统计功能的广告管理系统PHP源码 多维度投放策略 多种风格后台...
  6. 西电计算机学院硕士生导师马,西安电子科技大学计算机学院研究生导师简介-周端...
  7. 2019三星比2018好在哪_【三星w2019和w2018参数对比资讯】三星w2019和w2018参数对比足球知识与常识 - 足球百科 - 599比分...
  8. 4G模块配置、概念、调试记录
  9. Kettle工具——Spoon、Kitchen、Pan、Carte
  10. 如何利用 Github 搭建自己的免费图床?
  11. What is tethering and how do you enable tethering?
  12. linux下制作pe启动盘工具,自己动手定制winpe dos工具箱迷你linux u盘启动盘
  13. 【汇编语言】【ARM扩展资料】硬件组成
  14. EChar中的柱状图如何设置柱子的最大宽度和刻度的最小间隔
  15. 基于美团Leaf-Segment的双buffer方案实现序列号生成器
  16. Python-自动化测试之接口基础
  17. QT实现窗口置顶、置顶状态切换、多窗口置顶优先关系
  18. chenzi.exe的分析及解决方法
  19. AD17复制出现问题
  20. 2019年浙江大学计算机学院的考研经验

热门文章

  1. Web应用——驾培管理系统之登录功能(作者:小圣)
  2. MFC打开一个文件方法汇总
  3. 认知电子战 (2.2):基于机器学习的目标状态识别
  4. linux aria2 参数,aria2常用命令
  5. 火车头采集翻页内容_火车头采集:内容替换支持[参数],标签
  6. 李白号称诗仙,为何七律连有些二流诗人都敌不过?
  7. Java各阶段学习书目
  8. 2018,我们就是星辰大海
  9. NTIRE2021 视频超分竞赛简要回顾
  10. 筒仓计算表格_小时,速度,筒仓团队和甘特兹