|
主题 : : 实验9怎么执行到mov ss,ax就跳出来了 [待解决] |
回复[ 2次 ]
点击[ 235次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2011-04-13 22:08 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:0
注册日期:2011-04-08 20:28 |
assume cs:code,ds:data,ss:stack
data segment
db 'welcome to masm!'
db 02h,24h,71h
data ends
stack segment
db 0,0
stack ends
code segment
start:
mov ax,data
mov ds,ax
mov ax,0b86eh
mov es,ax
mov ax,stack
mov ss,ax
mov sp,03h
mov bx,0
mov cx,3
mov bp,0
mov di,0
s: push cx
mov cx,16
s0:mov al, [bx]
mov es:[bp+64+di],al
mov al,cs:[17+bp]
mov es:[bp+65+di],al
add di,2
inc bx
loop s0
pop cx
add bp,0ah
loop s
mov ax,4c00h
int 21h
code ends
end start | | |
|
|
|
|
[第1楼]
[ 回复时间:2011-04-13 23:26 ]
[引用]
[回复]
[ top ] | |
荣誉值:2
信誉值:0
注册日期:2011-04-08 20:28 |
assume cs:code,ds:data,ss:stack
data segment
db 'welcome to masm!'
db 02h,24h,71h
data ends
stack segment
db 0,0
stack ends
code segment
start:
mov ax,data
mov ds,ax
mov ax,0b86eh
mov es,ax
mov ax,stack
mov ss,ax
mov sp,03h
mov cx,3
mov bp,0
mov si,0
s: push cx
mov cx,16
mov bx,0
mov di,0
s0:mov al, [bx]
mov es:[bp+64+di],al
mov al, [16+si]
mov es:[bp+65+di],al
add di,2
inc bx
loop s0
pop cx
add bp,0a0h
inc si
loop s
mov ax,4c00h
int 21h
code ends
end start
改过之后,全屏,debug *.exe,g,就对了 | | |
|
|
|
|
[第2楼]
[ 回复时间:2011-05-13 14:46 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2011-05-10 13:34 |
stack segment
dw 0,0
stack ends 这样子才对 需要的是32位,4字节,2字 | | |
|