从计算的根源谈及计算机中“码”的设计和一些理解

本文探讨了计算机中码的设计,尤其是补码在加减法中的作用。通过从计算的角度出发,解释了为什么使用补码表示负数,以及如何通过补码实现加法和减法。文章还提到了数值溢出的概念,以及原码、反码和补码之间的关系。最后,引发了一些关于浮点数表示和计算的思考问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

关于计算机中“码”的设计根源的浅薄理解

无论是在学习大学计算机这门课,还是在学习计算机系统的初期,我们都会反复提到关于几种码的定义。这里我单指原码、反码和补码,而并不包括国标码和机内码那几种码。尝试理解设计师们在初期为什么要设计原码、反码和补码,一定能让我们对这三个好兄弟(gui)有更好的理解。
完整的读完本篇文章,你对码的理解一定能提高相当高的一个层次。
发表意见仅代表个人理解,如果出现一些错误和理解上的局限请各位客官不吝赐教。

从计算而设计的角度出发

关于为什么计算机要使用二进制,引用一篇本站阅读量很高的一篇文章,此处不再重复。【为什么计算机要使用二进制】
在这里我们从如何计算开始,试图从零开始教一台电脑做数学题。
众所周知:计算机是一个非常“蠢”的家伙,但是他是最勤劳的。我们总要交给他尽量简单的方法和动作驱使他最大效率的工作,来满足我们自己的需求,因此设计一个通用且简单的逻辑始终是我们的核心目的。

加法

我们先创建两个只有16位二进制(远古电脑的字长)的非负整数吧,做一下加法。

num1 num2 sum
0000000000000001 0000000000000011
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值