计算机是如何识别数据的表示是原码,补码,还是反码的?

计算机是如何识别数据的表示是原码,补码,还是反码的?在数的编码中,小数点和指数底采取隐含处理是怎么隐含处理的?微机原理没有学好啊... 计算机是如何识别数据的表示是原码,补码,还是反码的?

在数的编码中,小数点和指数底采取隐含处理

是怎么隐含处理的?
微机原理没有学好啊
展开
 我来答
009simon
2013-08-19
知道答主
回答量:10
采纳率:0%
帮助的人:1.4万
展开全部
问题1:在计算机中,正数用原码表示;负数用补码表示;而补码=反码加1。

例如:如果定义 int i; 那么i就是一个有符号整形变量。这是,如果你给i赋值,那么计算机就会根据 i的最高位,判定其大小。 比如,i = -3。计算自动存储的数为(1111 1111 1111 1101
),这个就是补码。
galunphendo
2006-04-03
知道答主
回答量:29
采纳率:0%
帮助的人:13.4万
展开全部
不是计算机如何识别这些码,而是这些码都是由人定的。比如浮点数表示中尾数用补码,阶用移码等等。相应的运算都有电路,比如在Booth乘中的电路就实现了补码的乘。这些运算电路都是人们根据规定的码型来设计的。运算是ALU(算数逻辑单元)完成,里面有很多运算电路,都是完成不同运算的。建议你可以查阅一下计算机组成原理方面的书。
一定要记住,不是计算机来识别这些码,而是人们在规定了这些码及其运算之后,又通过设计电路让计算机实现的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tt121cn
2019-10-17
知道答主
回答量:2
采纳率:0%
帮助的人:1394
展开全部
我理解你想问的问题,咱们以short int类型为例子来说明。
short int 类型在计算机中为两个字节,它表示的范围为+(2^7-1)到-(2^7),而不是+(2^8-1)到-(2^8),也就是说两个字节的最高位实际上还是符号位,当最高位为0时候,表示的是原码(正数),当最高位为1时候,说明这个数是补码(负数)。
这个在VS中可以验证,定义
short int a,b;
a=32768;
b=-32768;
在调试模式下,看两个变量的内存值,你就会发现两个值都是-32768(00,80)
简而言之,在计算机内表示的一个二进制数,不可能既是原码又是补码,所以计算机是能够区分的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
做而论道
高能答主

2022-03-24 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.1亿
展开全部
在计算机系统中,数值,一律用补码表示(存储)。
所以,原码反码,在计算机中,都不存在。
因此,也就没有识别的问题。
在机器数中,只有 1、0,没有小数点。
小数点在何位置?
这个位置,必须由编程人自己记住。
计算机中,并没有位置信息,这就是“隐含”。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式