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

相关推荐
安妮的小熊呢18 小时前
CRMEB开源商城系统 & 标准版系统(PHP)开发规范
开发语言·javascript·php
子榆.18 小时前
CANN ATC编译器:模型从Python到达芬奇指令走了多远
开发语言·python·neo4j
番茄灭世神18 小时前
PN学堂GD32教程第21篇——WiFiIOT
c语言·stm32·单片机·嵌入式·gd32
Dontla18 小时前
Multi-Agent多智能体项目如何从MVP过渡到生产项目?
开发语言
兰令水19 小时前
topcode【随机算法题】【2026.5.20打卡-java版本】
java·开发语言·算法
我还记得那天19 小时前
C语言递归实现汉诺塔问题
c语言·开发语言
不吃土豆的马铃薯19 小时前
Spdlog 入门:日志记录器与日志槽基础详解
服务器·开发语言·c++·c·日志·spdlog
凯瑟琳.奥古斯特19 小时前
传输层核心功能解析
开发语言·网络·职场和发展
Fuyo_111919 小时前
C++中的活字印刷术——模板·初阶
开发语言·c++·笔记
在角落发呆19 小时前
跨越网络鸿沟:传统文件传输与现代内网穿透的奇妙交响
开发语言·php