手把手带你拿捏计算机原码、反码、补码的计算原理

大家先判断下下面代码的运行结果


答案:

如果你做对了,并且知道计算机底层原理是如何计算出这个答案的,那么恭喜大佬,这篇博客可能对你收益不大,全当复习好了,这是专门针对编程小白初学计算机底层计算原理的讲解,诚挚地希望能够到xdm。接下来我将开始我的讲解,手把手带xdm拿捏这两个操作符的运算。

基本概念:

原码:

直接将二进制按照正负数的形式翻译成二进制就可以。

反码:

将原码的符号位不变,其他位依次按位取反就可以得到了。

补码:

反码+1就得到补码。

扩展:

1、在计算机中我们能看到的数值都是原码。
2、在计算机系统中,数值一律用补码来表示和存储,而不是我们看到的原码。原因在于:使用补码可以将符号位和数值域统一处理;同时,加法和减法也可以统一处理(CPU只有加法器),此外,补码与原码相互转换,其运算过程是相同的,不需要额外的硬件电路。
3、反码起到原码和补码之间转换的媒介作用。

4、在计算机中,正数的原、反、补码都是相同的。

代码演示:

整体演算

注:内存1代表的是joyous变量,内存2代表的是jubilant变量,内存3代表的是charmed变量
首先是3个变量的随机初始化

3个变量的指定初始化

经过运算后的结果

附1:

若大家看不懂编译器的大小端存储,这边建议你看下我的这篇博客,这是专门讲编译器的大小端存储的

编译器大小端存储讲解

演示代码提取:

#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>int main()
{int joyous = -1, jubilant = 1;int charmed = 6;charmed = joyous + jubilant;printf("%d\n", charmed);return 0;
}//计算机在进行整形类型的算术运算时是采用补码的方式来进行计算的//-1在计算机内存中的存储
//10000000000000000000000000000001(原码)
//11111111111111111111111111111110(反码)
//11111111111111111111111111111111(补码)//1在计算机内存中的存储
//00000000000000000000000000000001(正数的原、反、补码相同)//11111111111111111111111111111111(-1的补码)
//00000000000000000000000000000001(1的补码)
//00000000000000000000000000000000(计算出的结果)

备注:

楼主不才,不喜勿喷,若有错误或需要改进的地方,非常感谢你的指出,我会积极学习采纳。谢谢家人们一直以来的支持和鼓励,我会继续努力再接再励创作出更多优质的文章来回报家人们的。编程爱好的xdm,若有编程学习方面的问题可以私信我一同探讨(我尽力帮),毕竟“众人拾柴火焰高”,大家一起交流学习,共同进步!

2021.11.25

一把王者的时间带你拿捏计算机原码、反码、补码的计算原理相关推荐

  1. 一把王者的时间带你拿捏计算机中整形提升的问题

    计算机中整形提升讲解 附1: 计算机的底层计算原理 大家猜猜下面程序的运行结果是多少? 如果你的答案是0,那么恭喜你答对了. 解析:那么答案为什么是0呢?接下来我就用计算机底层的计算原理手把手告诉你这 ...

  2. 原码一位乘法器设计_十分钟带你彻底搞懂原码、反码、补码

    点击上方"程序员大白",选择"星标"公众号 重磅干货,第一时间送达 编辑 | 程序员大白公众号来源丨https://www.cnblogs.com/zhangz ...

  3. 一把王者的时间,学会generate语句【Verilog高级教程】

    芯片设计验证社区·芯片爱好者聚集地·硬件相关讨论社区·数字verifier星球 四社区联合力荐!近500篇数字IC精品文章收录! [数字IC精品文章收录]学习路线·基础知识·总线·脚本语言·芯片求职· ...

  4. 室友一把王者的时间我拿捏了数据结构——顺序表(C语言版)

    话不多说,先上整体动态顺序表实现的代码给大家 SeqList.h #include <stdio.h> //包含标准输入输出流的头文件 #include <assert.h> ...

  5. 【纯JavaSE】图书管理系统(带精解注释)舍友一把王者的时间,我完成了一个纯Java的基础入门小项目~

  6. 一把王者的时间,我就学会了Nginx

    作者 | 步尔斯特 来源 | CSDN博客 Nginx 简介 Nginx("engine x")是一个高性能的 HTTP 和反向代理服务器,特点是占有内存少,并发能力强,事实上 n ...

  7. 室友利用一把王者的时间就学会了【C语言结构体内存对齐】

    文章目录 一.什么是结构体内存对齐? 二.结构体的对齐规则 结构体内存对齐规则的具体应用 三.为什么会存在内存对齐 总结 提示:以下是本篇文章正文内容,下面案例可供参考 一.什么是结构体内存对齐? 从 ...

  8. 一把王者的时间,我就学会了 Nginx

    一.Nginx 简介 Nginx("engine x")是一个高性能的 HTTP 和反向代理服务器,特点是占有内存少,并发能力强,事实上 nginx 的并发能力确实在同类型的网页服 ...

  9. 一把王者的时间就写完了一个nginx的web集群项目

    构建一个基于nginx的web集群项目 一.什么是负载均衡? 二.为什么需要负载均衡? 1.编译安装nginx 2.解决软件的依赖关系,需要安装的软件包 3.新建luogan用户和组 4.下载ngin ...

最新文章

  1. ZeroClipboard跨浏览器复制粘贴
  2. 如何给你的web项目加入log4net支持
  3. dropdownlist三级联动怎么实现_Excel下拉菜单不会做?15秒教会你制作一二三级联动下拉菜单,从此做表不求人!...
  4. iOS - 获取安装所有App的Bundle ID
  5. rstudio 导出结果_RStudio如何完美导出包含中文的图
  6. 五桌面工具来创建优秀的Windows环境
  7. 第二十四期:面试问:Kafka为什么速度那么快?该怎么回答
  8. CodeForces - 1013B And 与运算暴力
  9. 银行卡号,指定字符长度分割字符串
  10. flutter的PDF阅读器
  11. 介绍一下ISO9000质量标准
  12. 九宫格锁屏和设置密码(九点密码盘)
  13. C语言:判断一个三位数是否为水仙花数
  14. imx8qxp uuu 下载脚本example_kernel_emmc.uuu注释
  15. html中js alert函数,javascript的alert是什么
  16. (OK) MIMP - 18 ( 5 nodes) - 抓包-缺少 MPTCP-JION - 分析 mptcp-kmsg-client-5-nodes-no-ping.txt
  17. jQuery的文档处理
  18. 邓俊辉 数据结构 图
  19. 机顶盒ttl无法输入_连接TTL线后无法输入代码、不跑码乱码的解决方法
  20. 华芯通服务器芯片将于今年年底前上市

热门文章

  1. ssh连接linux_使用内网穿透访问内网ssh图文教程
  2. 军衔系统与服务器人数,经验越打越少?CSGO个人资料军衔(等级)介绍
  3. 3dmax 管子动画_3Dmax怎么制作发光管?
  4. 基于QT的局域网文件传输系统
  5. pxe装机dhcp获取不到_通过PXE安装系统失败后的解决办法
  6. 因果推理综述—基于论文《A Survey on Causal Inference》总结
  7. 迈瑞CL6000i全自动化学发光免疫分析仪【双向通讯】
  8. 百度mip推送工具_百度小程序继熊掌号后,百度搜索站长平台的又一脱了裤子放屁闹剧...
  9. 2020 GDUT Rating Contest III (Div2)
  10. 超清动态桌面壁纸大全