assume cs:code
data segment
dw stack
data ends
code segment
stack: mov ax,data
mov ds,ax
mov bx,0
jmp word ptr[bx+1]
code ends
end stact
我把setment设为他的偏移不知道对不对,还是直接设0呢,请高手解答
assume cs:code
data segment
dd 12345678H
data ends
code segment
stack: mov ax,data
mov bx,0
mov [bx],bx
mov [bx+2],code 这地方我先前设的CODE但是编译有错。但是也能执行,结果也正确
不这我设成CS结果也一样。原因何在?
jmp word ptr ds:[0]
code ends
end stact
assume cs:code
code segment
stack: mov ax,2000H
mov ds,aax
mov bx,o
s:mov al,[bx] 先把2000单元的值给al
mov cx,al 再将al给CX
jcxz ok 看看cx的值为不为0,如果为0跳到0k地方执行
inc bx 不是就执行下一步,偏移加1
jmp short s
ok:mov dx,bx
mov ax,4c00H
int 21H
code ends
end stact
这题很简单,就是一开始不懂jcxz的用处。但是感觉这个用户不是很大,也就等于C语言的IF语句 |