早教吧作业答案频道 -->其他-->
算术移位为什么会溢出啊~?算术左移:符号位不变,高位移出,低位补0。为保证补码算术左移时不发生溢出,移位的数据最高有效位必须与符号位相同。在不发生溢出的前提下,用硬件实
题目详情
算术移位 为什么会溢出啊~?
算术左移:符号位不变,高位移出,低位补0。
为保证补码算术左移时不发生溢出,移位的数据最高有效位必须与符号位相同。在不发生溢出的前提下,用硬件实现补码的算术左移时,直接将数据最高有效位移入符号位,不会改变机器数的符号。
移位的数据最高有效位必须与符号位相同?
和后面这句话是什么意思啊~?是说算术左移和逻辑左移的意义一样?~...~but~但是意义何在~?
算术左移:符号位不变,高位移出,低位补0。
为保证补码算术左移时不发生溢出,移位的数据最高有效位必须与符号位相同。在不发生溢出的前提下,用硬件实现补码的算术左移时,直接将数据最高有效位移入符号位,不会改变机器数的符号。
移位的数据最高有效位必须与符号位相同?
和后面这句话是什么意思啊~?是说算术左移和逻辑左移的意义一样?~...~but~但是意义何在~?
▼优质解答
答案和解析
取一字节为例,能表示的数字从 -128 ~ 127
先看正数,比如 9,就是 0000 1001,最高位(符号位)和数据最高位都是 0. 左移得到 0001 0010 也就是 18
再看负数 -9,就是 -(0000 1001) 也就是 1111 0110 + 1 即 1111 0111,最高位(符号位)和数据最高位都是 1. 左移后是 1110 1110,反过来是 (1110 1101 + 1)->0001 0010,就是 -18 了。
如果数据最高位和符号位不同的话,说明这个数字的绝对值已经超过 64 了,那么左移一位后必然溢出。
所以一个【有效的】左移最高位和数据最高位必然一致。故算术左移和逻辑左移一样。
先看正数,比如 9,就是 0000 1001,最高位(符号位)和数据最高位都是 0. 左移得到 0001 0010 也就是 18
再看负数 -9,就是 -(0000 1001) 也就是 1111 0110 + 1 即 1111 0111,最高位(符号位)和数据最高位都是 1. 左移后是 1110 1110,反过来是 (1110 1101 + 1)->0001 0010,就是 -18 了。
如果数据最高位和符号位不同的话,说明这个数字的绝对值已经超过 64 了,那么左移一位后必然溢出。
所以一个【有效的】左移最高位和数据最高位必然一致。故算术左移和逻辑左移一样。
看了 算术移位为什么会溢出啊~?算...的网友还看了以下:
孕前补钙的最佳时间是多久 孕前补钙应该注意些什么 2020-03-29 …
最美的补考答案快!最美的补考包利民大二那年寒假,春节将近的时候,接到学校的通知,我有一门专业课在期 2020-06-11 …
移动神州行最低消费规则中的这条是什么意思每月必须满足最低消费要求,按自然月计算,当月未达到最低消费 2020-06-17 …
前三列输入了数字,如何在第四列自动输入前三列数字中最大值?补充,前三列数字中小数点后面有数字,希望 2020-07-25 …
计算机组成原理请简单粗暴的解释一下补码一位乘法就是加一个右移之后最左补个数是根据什么补的啊ynyn+ 2020-11-21 …
射雕英雄传的前面部小说是什么?电影也可以!就好像《神雕侠侣》的前身是《射雕英雄传》,那《射雕英雄传》 2021-01-17 …
吃什么补肾效果最好补肾吃什么食物最好 2021-03-30 …
吃什么最补血吃什么补血最快最好 2021-03-30 …
吃什么补血最快最好产妇吃什么补血效果最好 2021-03-30 …
吃什么补气血最快最好女人吃什么补气血最好 2021-04-10 …