【刷题】计算机组成原理--数据的表示及其运算(转) (7)

【刷题】计算机组成原理--数据的表示及其运算(转)

127原码=127补码=01111111=7F

-9原码=10001001  -9补码:11110110+1=11110111=F7

因为机器中数据是用补码表示的,所以要用补码计算

第二道题:

【刷题】计算机组成原理--数据的表示及其运算(转)

分析:短字节向长字节的转换,高位的扩展位变为对应的符号位

【刷题】计算机组成原理--数据的表示及其运算(转)

65535为正数,高位补0

第三道题:

【刷题】计算机组成原理--数据的表示及其运算(转)

分析:无符号与有符号之间的相互转换,主要看对符号位的解释,将符号位当成符号就是有符号数,当成真值解释就是无符号数。机器中用补码表示数。

【刷题】计算机组成原理--数据的表示及其运算(转)

-32767二进制为:1111111111111111(二进制)补码为1000000000000000+1=1000000000000001 表示为无符号数是32769 

定点数基本运算及存储方式

第一道题

【刷题】计算机组成原理--数据的表示及其运算(转)

分析:
这是一道表面考定点数补码的乘法的问题,但是学过的都知道,乘法的计算太啰嗦了,而且要记忆的东西步骤也极为麻烦,所以出在考试大题不大可能,出现在选择题更不可能,而这个题目,一开始就让我们计算四个数分别相乘的组合。老老实实做,那么做完你也应该快考完了。所以换个角度,直接判断是否溢出,将它们化为10进制真值,用结果看看能不能用8位表示。说白了还是考码制之间的转换。

考点 :码制间的转换与运算,溢出判断

【刷题】计算机组成原理--数据的表示及其运算(转)

第二道题

【刷题】计算机组成原理--数据的表示及其运算(转)

分析:关键词按字节编址,按边界对齐,小端方式。我们知道int是占用4个字节的,char1个字节,short为2个字节,加起来要7个字节,但是实际上是8个。因为它按边界对齐。我们注意到,按顺序short应该到D,但是D = 13,不是2的倍数,所以从E开始存储。
所以过程如下:

【刷题】计算机组成原理--数据的表示及其运算(转)

第四道题

【刷题】计算机组成原理--数据的表示及其运算(转)

分析:如果直接死脑筋算的话,很是麻烦,看看有没有好的办法,二进制数对2的乘除,就是移位操作,乘上一个2,左移。除去一个2,右移。实在忘记了,就举个10进制的例子:
2 X 10 = 20 //相当于将2左移一位
20/10 = 2 //相当于把20右移了一位。这样就好办了:

【刷题】计算机组成原理--数据的表示及其运算(转)

有符号数移位时,都是按照补码的形式移位:

右移:最右边的一位舍弃,最左边补符号位。

左移:最左边的一位舍弃,最右边补0。

【刷题】计算机组成原理--数据的表示及其运算(转)

C

103二进制:01100111   -25二进制:10011001   103补码:01100111 -25补码:11100111   -y的补码:11100111

【刷题】计算机组成原理--数据的表示及其运算(转)

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzfpwj.html