helloTOM 发表于 2017-4-1 16:39:47

王爽汇编问题9.1

1.为啥图1代码6-7不能改为图2代码6?
2.不一定非要用ax作为传递媒介吧?

人造人 发表于 2017-4-1 17:29:43

问题1
很简单,因为处理器设计者没有设计那样的指令

问题2
的确,以下代码也可以
assume cs:code

code segment
start:

s:
        mov ax, bx
        mov si, offset s
        mov di, offset s0
        mov bx, cs:
        mov cs:, bx
       
s0:
        nop
        nop
       
        mov ax, 4c00h
        int 21h
   
code ends
end start

最终的执念 发表于 2017-4-1 17:34:59

数据宽度的问题

mov cs:, word ptr cs:

人造人 发表于 2017-4-1 20:04:29

最终的执念 发表于 2017-4-1 17:34
数据宽度的问题

mov cs:, word ptr cs:

最终的执念 发表于 2017-4-2 10:53:22

很奇怪的错误    可能原因:   mov指令不能直接操作两个内存

wyuri 发表于 2017-4-10 10:07:15

本帖最后由 wyuri 于 2017-4-10 10:18 编辑

我操作了一下,mov byte ptr cs:,2可以但是mov byte ptr cs:,mov byte ptr cs:,可能规定就是不允许内存单元和内存单元吧?不过细究这个意义大么?编错了,自然编译器不干不干就改回来就完了,问点逻辑性的问题,也让大家有点讨论 ^_^

helloTOM 发表于 2017-4-14 02:38:22

wyuri 发表于 2017-4-10 10:07
我操作了一下,mov byte ptr cs:,2可以但是mov byte ptr cs:,mov byte ptr cs:,可能规定就是 ...

嗯嗯有道理 谢谢{:9_240:}{:9_240:}
页: [1]
查看完整版本: 王爽汇编问题9.1