原码 反码 补码的简单计算附例题

C语言实现十进制转二进制 C语言实现十进制转二进制 数学原理 用2整除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为小于1时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。 编程实现 # include<stdio.h> void g(int); void h(int); int main(void) { in... 阅读详情
AI摘要

本文详细解析了计算机内部数据表示方法,包括原码、反码和补码的概念,以及它们在数学运算中的作用。通过实例展示了如何进行补码计算,解释了为什么需要使用补码。

原码 反码 补码

  • 对计算机中常见数据简单分类
  • 机器数 与 真值
  • 原码
  • 反码
  • 补码
  • 扩展

对计算机常见数据的分类

image.png

机器数

就是数值在计算机中的二进制表现形式

机器数在计算机中有符号,使用 最高位表示符号 , 使用0 表示正,使用 1 表示负

一个字节8个bit位表示

+5 = 0000 0101

-10 = 1000 1010

真值

机器数所表示的真正的数值

如 : 1000 1010 = -10

原码

原码就是符号位加上真值的绝对值

反码

正数 : 正数的反码 = 原码 如: +3 = 0000 0011[原码] = 0000 0011 [反码]

负数 : 符号为不变 ,其余各位直接取反 , 1->0 0->1

补码

计算机中数据以补码的形式,同样以补码的形式参与运算

正数 : 原码 = 反码 = 补码 如 : +3 0000 0011[原码] = 0000 0011[反码] = 0000 0011[补码]

负数 : 首先求的反码,在反码的基础上 + 1,[加到最低位上]

为什么需要反码和补码

  • 反码
    • 在计算机的时候,只有加法器没有减法器,为了将减法转换为加法,设计反码;
    • 但是反码有缺陷,正负相加 0 的表示不唯一;
  • 补码
    • 为了解决反码正负相加不唯一的情况,使用高位溢出解决;

将补码转换为原码

正数 : 不需要转

负数 : 求补码的补码

将负数的补码当做原码,然后求该原码的补码

计算规则 :符号位不变,其余各位直接取反,然后加1;

使用补码计算以下式子


  • 34 - 11 = 23 = 34+(-11)
    34的原码反码补码都相同为 0010 0010
    -11的原码为1000 1011
    反码为1111 0100
    补码为1111 0101

俩补码相加得0001 0111 = 23

  • -67-11 = -78 = -67+(-11)
    -67得原码为1100 0011
    反码为1011 1100
    补码为1011 1101
    -11的原码为1000 1011
    反码为1111 0100
    补码为1111 0101

俩补码相加得 1100 1110 == -78

  • -41-29 = -70 =-41+(-29)
    -41的原码为 1010 1001
    反码 得1101 0110
    补码得 1101 0111
    -29的原码为1001 1101
    反码为1110 0010
    补码为1110 0011

俩补码相加得 1100 0110 = -70

Mediapipe入门——搭建姿态检测模型并实时输出人体关节点3d坐标(2024.1.4更新) Mediapipe入门,利用mediapipe搭建人体整体检测模型,并输出右手21个关节点的坐标;mp_holistic.Holistic函数理解,mp_holistic.Holistic.process函数理解;mp.solutions.drawing_utils.draw_landmarks函数理解;Mediapipe实时姿态估计,3d骨架铰接图,matplotlib和Mediapipe绘图 阅读详情

相关推荐

组态王7.5和SQLsever数据库交互

摘要:本文详细介绍了组态王7.5与SQL Server 2016数据库交互的实现流程,包括建立连接、数据存储与查询操作。主要内容涵盖ODBC数据源配置、数据库表格创建、数据插入及查询功能实现(含日期控件查询)

gsjkwg的博客 1577

原码,补码、反码计算

一. 机器数和真值 在学习原码, 反码和补码之前, 需要先了解机器数和真值的概念. 1、机器数 一个数在计算机中的二进制表示形式, 叫做这个数的机器数。机器数是带符号的,在计算机用一个数的最高位存放符号, 正数为0, 负数为1. 比如,十进制中的数 +3 ,计算机字长为8位,转换成二进制就是00000011。如果是 -3 ,就是 10000011 。 那么,这里的 00000011 和...

qq_37676370的博客 1万+

PCB设计之ODB++文件格式详解

ODB++(Open Database++)是一种广泛应用于PCB(印制电路板)设计和制造领域的开放数据交换格式。它由Valor Computerized Systems(现为Siemens EDA的一部分)开发,旨在替代传统的Gerber文件格式,提供更完整、结构化的制造数据,从而优化PCB设计到生产的流程。ODB++通过结构化数据整合了PCB设计到制造的全流程信息,显著提高了生产效率和准确性。尽管存在一定的兼容性挑战,但其在复杂项目和高可靠性场景中的价值不可替代。

ZZcppc的博客 1万+

原码、反码、补码

关于原码、补码反码的基本介绍以及简单的计算方法。

qq_53364137的博客 2376

Jetson Orin Nano@Ubuntu22.04:IMX219 CSI摄像头配置全流程与避坑指南

本文详细介绍了在Jetson Orin Nano@Ubuntu22.04系统上配置IMX219 CSI摄像头的全流程,包括硬件安装、驱动配置、常见问题排查及性能优化。特别强调了排线方向、驱动模式选择等关键细节,并提供了实用的命令和解决方案,帮助开发者高效完成摄像头部署与调试。

prometheus9mon的博客 318

劳特巴赫 Trace32 调试使用教程

详细介绍如何使用trace32进行调试

m0_56208280的博客 4万+

原码, 反码, 补码 计算和原理详解

本篇文章讲解了计算机的原码, 反码和补码. 并且进行了深入探求了为何要使用反码和补码, 以及更进一步的论证了为何可以用反码, 补码的加法计算原码的减法. 论证部分如有不对的地方请各位牛人帮忙指正! 希望本文对大家学习计算机基础有所帮助! 一. 机器数和真值 在学习原码, 反码和补码之前, 需要先了解机器数和真值的概念. 1、机器数 一个数在计算机中的二进制表示形式, 叫做这个数的机...

程序员阿超的博客 2万+

(四) OpenClaw-Skill技能全面了解和自定义技能

OpenClaw Skills是提升AI代理功能性的关键模块。本文系统介绍了Skills的核心概念、获取渠道和创建方法。Skills作为标准化指令集合,能让OpenClaw从单纯理解升级为实际执行任务,相比传统System Prompt具有模块化、可复用等优势。用户可通过Clawhub官方商店、GitHub社区等渠道获取5700+现成技能,或按需开发自定义Skill。文章详细演示了创建"Hello World"示例技能的完整流程,包括编写Python脚本、配置SKILL.md文件、部署。

直到世界的尽头 8295

计算机中的原码、反码和补码计算

计算机中的所有数据都是以数据的补码形式存储的(机器码)。这里涉及到原码、反码和补码的计算如下:1、原码:在计算机中的机器字长的最高位(最左边)表示正负,0为正数,1为负数,原码就是最高位是符号位,其余位表示数值(绝对值)大小。2、反码:正数的反码就是其本身(原码)不变,而负数的反码就是在负数原码的基础上符号位保持不变,其余位按位取反。3、补码:正数的补码就是其本身(原码),而负数的补码就是在原码的...

xzengwei1313的博客 2万+

Centos 7 Linux 离线安装单机 Kafka:下载、安装、配置、使用

本文详细介绍了在 CentOS 7 系统上离线安装单机版 Apache Kafka 的完整流程,包括环境准备(JDK 安装)、Kafka 安装包上传与解压、关键配置修改(如监听地址)、ZooKeeper 与 Kafka 服务的启动,以及 Topic 的创建、消息的生产和消费等基础操作。适用于无网络环境下的 Kafka 快速部署与学习,为后续开发或测试提供本地消息队列支持。

寒水馨 · 轻量级技术文档 · hanshuixin.org 1319

大数据开发工程师必备面试题与解答

大数据开发岗位一直是互联网行业的热门方向,面试过程中既考察基础知识,也关注实际项目经验和问题解决能力。本文整理了等核心组件相关的高频面试题及参考解答,帮助大家高效准备面试。大数据面试不仅考察基础理论,更看重项目经验与问题解决能力。本文涵盖了等核心知识点及调优思路,希望能帮助你在面试中游刃有余。

X2829352498的博客 302

原码,反码,补码———详解

计算机中的有符号数有三种表示方法,即原码,反码,补码。 三种表示方法均有符号位和数值位两部分,符号位都是用数字二进制中最高位0表示正,用数字二进制中最高位1表示负,而数值位有三种表示方法,各不相同。

2201_75806908的博客 7479

RAP Draft Handling 全面拆解:从独占 Draft 到协作 Draft 的架构与落地实践

独占 Draft 的启用点在行为定义头部的with draft。with draft;create;update;delete;with draft;上面这段代码来自一个完整的 Draft 启用示例,包含了 Draft 表声明、锁策略、ETag、Draft 动作等关键要素。:告诉框架草稿存哪。:告诉框架如何做并发控制与一致性保护。:把草稿生命周期动作显式暴露出来,让 UI 与事务引擎能正确驱动流程。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 957

认识原码反码补码

原反补码

2202_75357702的博客 1732

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

原码、反码和补码的计算

在学习原码、反码和补码的过程中,除了了解它们的表示方法,掌握如何在这些编码之间进行运算也是非常重要的。今天我们将以 原码、反码和补码的计算 为主题,讲解它们的加减法和转换过程,帮助大家更深入理解它们的实际应用。

B5201234的博客 3889

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

原码、反码、补码计算

https://blog.youkuaiyun.com/u010841296/article/details/52850307

枕上~诗书闲 3279

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

原码、反码、补码及用途

原码、反码、补码及用途 反码(Ones' Complement) 概念: 反码是通过对原码的数值部分逐位取反(0变1,1变0)得到的。 正数的反码和原码相同。 负数的反码是其原码除符号位外所有位取反。 补码(Two's Complement) 概念: 补码是反码加1得到的。 正数的补码和原码相同。 负数的补码是其反码加1。

热土程序园,利他愉己~ 2259

原码 反码 补码

计算机基础知识学习之原码 反码 补码

weixin_41043617的博客 1177

原码 反码 换算工具 补码_原码和补码的换算(原码反码补码转换工具)

[-3]反=[10000011]反=11111100 原码 反码 负数的补码是将其原码除符号位之。两个说法都没有错,我们举个例子来看看就明白了:1、10001的补码是取反后在再加1,也就是11110+1=11111;2、如果是11111变回原码呢?我们可以采取逆过程先减1,.(1)原码表示法 原码表示法是机器数的一种简单的表示法。其符号位用0表示正号,用:表示负号,数值一般用二进制形式表示。设有一...

weixin_39980347的博客 6449

原码 补码 反码

1-127的结果应该是-128, 在用补码运算的结果中, [1000 0000]补 就是-128. 但是注意因为实际上是使用以前的-0的补码来表示-128, 所以-128并没有原码和反码表示.(对-128的补码表示[1000 0000]补算出来的原码是[0000 0000]原, 这是不正确的)使用补码, 不仅仅修复了0的符号以及存在两个编码的问题, 而且还能够多表示一个最低数. 这就是为什么8位二进制, 使用原码或反码表示的范围为[-127, +127], 而使用补码表示的范围为[-128, 127].

m0_47505062的博客 1136

原码、反码、补码的讲解

本文主要介绍原码、反码、补码的计算方法以及意义。阅读此文需要知道十进制与二进制的转换法则。

HePingxxb的博客 3806

复习原码反码补码

原码:最高位为符号位,其余为数值部分。反码:正数与原码相同,负数是原码除符号位外各位取反。补码:正数与原码相同,负数是反码加 1。

2401_86812776的博客 946

原码、补码、反码,计算机加减计算

如果数大于128或者小于-127,则会溢出,溢出只能用两个字节(16位二进制数)表示。正数的原码、反码、补码都一样,负数则会变化。-21(原码):1001 0101(负数,标志位为1)-21(反码):1110 1010。-21(补码):1110 1011。原码—>反码:负数标志位不变,其他取反,正数不变。负数相加时,两数的补码相加,得到的为结果的补码,再转换出结果。例:14(反码):0000 1110。例:14(补码):0000 1110。例:14(原码):0000 1110。

b19839356939的博客 4761

原码、反码、补码的关系

原码补码和反码在实际生活中通俗的举例

Wwlvbb的博客 1567
上一篇: SSM注解介绍大全
下一篇: 详细介绍计算机常用进制及相互转换且带例题
Debug_EDM
博客等级 码龄8年 21粉丝 47原创
评论 10
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值