写代码 发表于 2018-2-26 22:28:24

大佬,考研党求助,紧急!!!(刚才发成作业区了。。)

大佬们,求助一个汇编问题,题目有答案没解释。我想知道为什么那几个指令错了

写代码 发表于 2018-2-26 22:37:07

真心求助,实在不会做{:5_96:}

zsh-98 发表于 2018-2-27 08:45:26

写代码 发表于 2018-2-26 22:37
真心求助,实在不会做

老哥,都考研了不会这个吗

shuiyu 发表于 2018-2-27 10:42:35

个人看法(不一定对的{:10_312:})
第一个SUB WORD PTR , 3 为错的;可以由第三行的ADD WORD PTR , 3看出,应该是不能用,需要用这种32位的寄存器

第二个不懂

第三个,不能将一个段寄存器的内容直接送到一个内存单元中, 可借助通用寄存器或PUSH, POP指令实现这一要求

第四个,不能将一个段寄存器的内容直接送到另一个段寄存器中, 可借助通用寄存器或PUSH, POP指令实现这一要求

第五个,IP寄存器(指令指针寄存器)是cpu自动操作的。call指令,jump指令,都能隐含的操作ip寄存器。没有任何特别的指令,能够直接以ip寄存器为操作数。

写代码 发表于 2018-2-27 18:39:52

zsh-98 发表于 2018-2-27 08:45
老哥,都考研了不会这个吗

不会啊大哥救我

写代码 发表于 2018-2-27 18:47:30

shuiyu 发表于 2018-2-27 10:42
个人看法(不一定对的)
第一个SUB WORD PTR , 3 为错的;可以由第三行的ADD WORD PTR

我研究研究

shuiyu 发表于 2018-2-28 09:20:04

写代码 发表于 2018-2-27 18:47
我研究研究

好的,如果得到正确解答,不嫌麻烦的话请告诉我谢谢

erh 发表于 2018-2-28 11:08:48

本帖最后由 erh 于 2018-2-28 11:11 编辑

可以指定内存地址在寄存器只有,bx,bp,si,di。由此,mov ax,之类的都是错的。段地址要通过ax跟内存交互。
这是cpu电路决定的
页: [1]
查看完整版本: 大佬,考研党求助,紧急!!!(刚才发成作业区了。。)