SHR和SAR命令

问题描述 投票:0回答:1

我想确保我100%理解了这个概念,如果没有得到澄清。

在asm程序中,如果执行SHR 00110000b,则最终会得到00011000b。但是,如果要在SHR上执行11111111b,您将得到错误的答案,应改用SAR?这是因为数字已签名?

assembly x86 masm bit-shift
1个回答
4
投票

如果执行SHR 00110000b,则结果为00011000b

如果您向右移一位,是的。您可以指定移动量,因此它不固定为1。

但是,如果您要在11111111b上执行SHR,您将得到错误的答案

如果您将11111111b进行逻辑右移一位,则会得到01111111b。您是否认为这是不正确的,完全取决于您要实现的目标。如果要保留符号,则应使用SAR

© www.soinside.com 2019 - 2024. All rights reserved.