逻辑左移 算术左移 乘以2运算的问题

song8575 2007-03-05 10:52:59
被操作数的最高位移入"进位",其余所有位接收其相邻低位值,最低位移入0的操作是()
A 逻辑左移 B 算术左移 C 乘以2运算 D 除以2运算

答案是A,为什么不是BC?

...全文
2387 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
mzlogin 2008-12-05
  • 打赏
  • 举报
回复
逻辑左移(SHL)和算术左移(SAL),这两条指令物理操作完全相同,每移位一次在后面补“0”,而最高位进入标志位CF。
习惯上,当目的操作数是无符号数时采用SHL,而当目的操作数为有符号数时,采用SAL算术移位。左移一位,相当于原数乘以2
wmg494005678 2008-12-04
  • 打赏
  • 举报
回复
逻辑左移和算数左移是一样的,同样不明白。。。
sageking2 2008-12-03
  • 打赏
  • 举报
回复
我敢肯定答案是不完整的.A 逻辑左移 B 算术左移 都是对的
书上有:SAL和SHL指令在物理上是完全相同的,.......
liubuweiright 2008-12-02
  • 打赏
  • 举报
回复
A 逻辑左移 B 算术左移 C 乘以2运算
juzinaiyou 2008-12-01
  • 打赏
  • 举报
回复 1
1楼的错了。SAL和SHL都有移进CF的


虽然是n久的帖子,但回复下,mark下我掌握了这点
cz1126 2007-03-07
  • 打赏
  • 举报
回复
严格来说答案应是AB,SAL/SHL的操作是相同的,只有一条机器指令与之对应(引自80x86汇编语言程序设计教程),答案C:乘以2运算后结果相同但CF标志位未必相同,乘除运算后对CF有影响.
DonaldKnuth 2007-03-07
  • 打赏
  • 举报
回复
B 算术左移 和 C 乘以2运算,都属于算术运算,他们不会考虑进位的,即
操作数的最高位相当于简单的丢弃,而不会移入状态寄存器中的进位位。

21,458

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧