汇编语言程序设计(高起专) 求大神帮助回答以下两道题

2024-11-30 10:55:09
推荐回答(2个)
回答(1):

1
(1)ADD VAR1,VAR2------两个操作数不能同时为内存单元
(2)SUB AL,VAR1--------第2个操作数为字单元,不匹配
(3)JMP LAB[SI]--------标号不能进行变址寻址
(4)JNZ VAR1-----------不能转到变量,只能转到标号
(5)JMP NEAR LAB-------near 多余

2
(1)MOV BP,AL----------------------------传送的类型不匹配
(2)MOV WORD_OP[BX+4*3][DI],SP-----------正确
(3)MOV WORD_OP1,WORD_OP2----------------传送指令两个操作数不能同为内存单元
(4)MOV AX,WORD_OP1[DX]------------------dx 不能作为基址或变址寄存器
(5)MOV SAVE_WORD,DS---------------------DS 段寄存器只能通过ax传递
(6)MOV SP,SS:DATA_WORD[BX][SI]----------ss 段寄存器使用错误
(7)MOV [BX][SI],2-----------------------未指定传送立即数的类型
(8)MOV AX,WORD_OP1+WORD_OP2-------------源操作数部分所代表的内存数据不能相加
(9)MOV AX,WORD_OP1-WORD_OP2+100---------问题同上
(10)MOV WORD_OP1,WORD_OP1-WORD_OP2------问题 同上、同(3)

回答(2):

真无聊!
我们学习汇编语言,能够把握住“指令系统”就很了不起了。
学习这些错误干嘛?
这些难得一见的错误指令,不都是垃圾吗?
这些,是“知识”吗?
学校,应该教什么,他们自己还没搞清楚!