整数储存形式(c基础)

原码表示法 定义:原码是一种简单的整数表示方法。对于一个有符号整数(以 8 位为例),最高位为符号位,0 表示正数,1 表示负数,其余位表示数值的绝对值。 示例: 对于正数 +5,其 8 位原码为 00000101。 对于负数 -5,其 8 位原码为 10000101。 特点:原码表示法很直观,但是在进行减法运算时,需要根据符号位判断是做加法还是减法,这使得运算电路设计相对复杂。 反码表示法 定义:对于正数,反码与原码相同。对于负数,反码是在原码的基础上,符号位不变,其余位按位取反。 示例: 正数 +5 的 8 位反码为 00000101。 负数 -5 的 8 位反码为 11111010。 用途:反码主要用于计算机内部的一些运算,在计算过程中可以简化减法运算为加法运算,但是它也存在一些问题,如存在 +0 和 -0 的不同表示形式。 补码表示法(最常用) 定义:对于正数,补码与原码相同。对于负数,补码是在反码的基础上加 1。 示例: 正数 +5 的 8 位补码为 00000101。 负数 -5 的 8 位补码为 11111011。 运算优势:在计算机中,使用补码进行运算可以将减法运算统一转换为加法运算。例如,计算 5 - 3,可以转换为 5+(- 3)。在补码表示下,直接将 5 的补码(00000101)和 - 3 的补码(11111101)相加,得到 00000010,结果就是 2 的补码,这种方式使得计算机的运算电路设计更加简单高效。 整数范围:以 8 位补码为例,能表示的范围是 - 128(10000000)到 127(01111111)。对于 n 位补码整数,其表示范围是 - 2^(n - 1) 到 2^(n - 1)-1。 移码表示法 定义:移码常用于表示浮点数的阶码部分。对于一个整数(以 8 位为例),移码是在补码的基础上,将符号位取反。 示例: 正数 +5 的 8 位移码为 10000101。 负数 -5 的 8 位移码为 01111011。 用途:移码的主要优点是可以方便地比较两个数的大小。因为移码的大小与真值的大小关系是一致的,即移码大的对应的真值也大。这在浮点数的比较和运算中非常有用。

相关推荐
言之。4 分钟前
【Java】面试题 并发安全 (1)
java·开发语言
m0_748234524 分钟前
2025最新版Java面试八股文大全
java·开发语言·面试
chengxuyuan1213_10 分钟前
Python有哪些常用的库
开发语言·python
xiaosannihaiyl2425 分钟前
Scala语言的函数实现
开发语言·后端·golang
新手小袁_J43 分钟前
java.lang.IllegalStateException: Error processing condition on org.springframework.boot.autoconfigur
java·开发语言·spring·spring cloud·bootstrap·maven·mybatis
墨鸦_Cormorant43 分钟前
Java 创建图形用户界面(GUI)组件详解之下拉式菜单(JMenu、JMenuItem)、弹出式菜单(JPopupMenu)等
java·开发语言·gui
cccccc语言我来了43 分钟前
c++-----------------多态
java·开发语言·c++
南鸢1.01 小时前
11张思维导图带你快速学习java
java·开发语言
sunny-ll1 小时前
【C++】explicit关键字详解(explicit关键字是什么? 为什么需要explicit关键字? 如何使用explicit 关键字)
c语言·开发语言·c++·算法·面试
泯泷1 小时前
JS代码混淆器:JavaScript obfuscator 让你的代码看起来让人痛苦
开发语言·javascript·ecmascript