不能将内容移动到任何其他注册表

时间:2014-12-10 07:47:15

标签: assembly masm x86-16

我必须将三个输入从寄存器al复制到内存。但我不知道我不能。在另一个程序中我做了这个,但在此它不会将任何输入复制到任何内存位置。我的代码是(请告诉我问题所在。 即时通讯使用MASM

.MODEL SMALL
.STACK 100h
.DATA 
intial1 DB ?
string0 DB 0dh,0ah,'***********',0dh,0ah
        DB '***********',0dh,0ah
        DB '***********',0dh,0ah
        DB '***********',0dh,0ah
        DB '***********',0dh,0ah ,'$'
string1 DB '*** $'
string2 DB ' ***$'
string3 DB 0dh,0ah,'***********',0dh,0ah
        DB '***********',0dh,0ah
        DB '***********',0dh,0ah
        DB '***********',0dh,0ah
        DB '***********$'
.CODE
MAIN PROC
mov ah,2
mov dl,'?'
INT 21h

;INPUT INTIALS

mov ah,1
INT 21h
mov bl,al
mov ah, 1
INT 21h
mov bh, al
mov ah, 1
INT 21h
mov intial1, al ; error lies here 


;DISPLAY

mov ax, @DATA
mov ds, ax
lea dx, string0
mov ah, 9
INT 21h
lea dx, string1
mov ah, 9 
INT 21h
mov ah,2
mov dl, bl
INT 21h
mov ah,2
mov dl, bh
INT 21h
mov ah,2
mov dl, intial1
INT 21h
lea dx, string2
mov ah, 9
INT 21h
lea dx,string3
mov ah,9
INT 21h

;ENDING

mov ah, 4ch
INT 21h
MAIN ENDP
END MAIN

1 个答案:

答案 0 :(得分:1)

mov intial1, al ; error lies here还需要正确初始化DS

放置此块

mov ax, @DATA
mov ds, ax

MAIN程序的最开始。