整数储存形式(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。 用途:移码的主要优点是可以方便地比较两个数的大小。因为移码的大小与真值的大小关系是一致的,即移码大的对应的真值也大。这在浮点数的比较和运算中非常有用。

相关推荐
workflower2 小时前
时序数据获取事件
开发语言·人工智能·python·深度学习·机器学习·结对编程
CoderYanger3 小时前
C.滑动窗口-求子数组个数-越长越合法——2799. 统计完全子数组的数目
java·c语言·开发语言·数据结构·算法·leetcode·职场和发展
C++业余爱好者3 小时前
Java 提供了8种基本数据类型及封装类型介绍
java·开发语言·python
林杜雨都3 小时前
Action和Func
开发语言·c#
皮卡龙3 小时前
Java常用的JSON
java·开发语言·spring boot·json
火山灿火山4 小时前
Qt常用控件(三)
开发语言·qt
利刃大大4 小时前
【JavaSE】十三、枚举类Enum && Lambda表达式 && 列表排序常见写法
java·开发语言·枚举·lambda·排序
float_六七4 小时前
Java反射:万能遥控器拆解编程
java·开发语言
han_hanker4 小时前
java 异常类——详解
java·开发语言
源码获取_wx:Fegn08954 小时前
基于springboot + vue健身房管理系统
java·开发语言·前端·vue.js·spring boot·后端·spring