读CSAPP杂记(1):若一个补码为1,其原码为?

在阅读《深入理解计算机系统》(CSAPP)时,作者探讨了一个问题:如果一个补码表示的数为1,其原码是什么?文章中,作者经历了从补码到原码转换的困惑,最终理解到这个1实际上等同于补码01,其中0为符号位。文章强调了补码编码的规则,并引用了书中关于补码数的符号扩展的解释。作者承认可能存在理解错误,欢迎大家指正。

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

若一个补码为1,其原码为?

在阅读CSAPP的P57,完成练习题2.24时发现一个我的概念理解边界:若一个补码为XXX1,在截断其前3位后,那么它的原码为?这道题目令我一个好久没有看计组的渣渣挣扎了好久。
当时想到了以下解题思路,但是都没有得到答案…

  1. CSAPP的P45中对于补码编码的定义如下:
    对于向量x⃗=[xw−1,xw−2,…,x0]:\vec{x}=[x_{w-1}, x_{w-2}, {\ldots} ,x_0]:x =[xw1,xw2,,x0]:B2Tw(x⃗)=−xw−12w−1+∑i=0w−2xi2iB2T_{w}(\vec{x})=-x_{w-1}2^{w-1}+\sum_{i=0}^{w-2}x_i2^iB2Tw(x
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值