
关于汇编为什么NEG指令是求补呢?
我是初学NEG指令的新手,有个关于NEG指令的问题希望大家解答,谢谢。NEG指令的效果为把操作数按二进制全部按位取返并+1,我们老师说这就是求补码(负数),本身这个指令也...
我是初学NEG指令的新手,有个关于NEG指令的问题希望大家解答,谢谢。
NEG指令的效果为 把操作数按二进制全部按位取返并+1,我们老师说这就是求补码(负数),本身这个指令也叫求补指令。但是,我想知道,按照计算机组成原理来说,二进制的补码(负数),求补之后不是符号位不变吗?为什么在DEBUG下,操作数就被认为是补码表示之后,代表符号位的首位就要变了呢?希望高手能详细解答,谢谢……
那我还想问问,DEBUG下到底如何求补码呢? 展开
NEG指令的效果为 把操作数按二进制全部按位取返并+1,我们老师说这就是求补码(负数),本身这个指令也叫求补指令。但是,我想知道,按照计算机组成原理来说,二进制的补码(负数),求补之后不是符号位不变吗?为什么在DEBUG下,操作数就被认为是补码表示之后,代表符号位的首位就要变了呢?希望高手能详细解答,谢谢……
那我还想问问,DEBUG下到底如何求补码呢? 展开
展开全部
怎么会不变呢。负数求补那是正数,正数求补那是负数。
比如:
0001假设第一位是符号位,这是正数1,把他求补
(1)先取反:1110(2)再+1:1111 这就是-1
为啥要加1呢?
因为如果你不加1,0000这是正0 ;ffff这是-0 ,但是一般我们只认为有一个0
所以要+1
比如:
0001假设第一位是符号位,这是正数1,把他求补
(1)先取反:1110(2)再+1:1111 这就是-1
为啥要加1呢?
因为如果你不加1,0000这是正0 ;ffff这是-0 ,但是一般我们只认为有一个0
所以要+1

2023-06-12 广告
STM32F103C8T6是一款基于ARM Cortex-M3内核的微控制器,具有以下基本参数:1. 工作频率:72MHz2. 外部时钟:最高可达120MHz3. 存储器容量:64K bytes4. 数据总线宽度:32位5. 输入/输出端口...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询