1. Ahora cree una
conexión de carpeta MASM LINK.EXE en la unidad E
2. Escriba el código en EX11.ASM
El marco principal del lenguaje ensamblador
DATA SEGMENT
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START: MOV AX, DATA
MOV DS,AX
MOV AH, 4CH
INT 21H
CODE ENDS
END START
El punto y coma en el lenguaje ensamblador; indica el comentario. La
bandera debe recordarse:
https://wenku.baidu.com/view/71fe5f06cc17552707220801.html
DATA SEGMENT
BUF1 DB A8H,9FH,B4H,25H
BUF2 DB 78H,FFH,D3H,5CH
BUF3 DB 4 DUP(?)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START: MOV AX, DATA
MOV DS,AX
LEA SI,BUF1
LEA DI,BUF2
MOV BX,OFFSET BUF3
MOV CX,4
CLC ;CF=0, STC CF=1//循坏
NEXT: MOV AL,[SI]//取字节
MOV DL,[DI]//取字节
ADD AL,DL//相加
MOV [BX],AL//存数
INC SI//移指针
INC DI//移指针
INC BX//移指针
DEC CX//循环次数减1
JNZ NEXT ;ZF=0//循环回去
MOV AH, 4CH
INT 21H
CODE ENDS
END START
Código de ejecución
DATA SEGMENT
BUF1 DB A8H,9FH,B4H,25H
BUF2 DB 78H,FFH,D3H,5CH
BUF3 DB 4 DUP(?)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START: MOV AX, DATA
MOV DS,AX
LEA SI,BUF1
LEA DI,BUF2
MOV BX,OFFSET BUF3
MOV CX,4
CLC ;CF=0, STC CF=1
NEXT: MOV AL,[SI]
MOV DL,[DI]
ADD AL,DL
MOV [BX],AL
INC SI
INC DI
INC BX
DEC CX
JNZ NEXT ;ZF=0
MOV AH, 4CH
INT 21H
CODE ENDS
END START
2. Depurar y descargar
Descargue
los pasos de construcción del entorno de ensamblaje de DOSBox
1. Descargue el instalador de DOSBox0.74-win32 e instálelo
2. El icono aparece en el escritorio, haga clic para ingresar a la siguiente interfaz: (Presione alt + Enter para escribir la pantalla completa, luego presione alt + Enter para volver a la media pantalla)
3. Enlace el directorio MASM. El
directorio MASM se encuentra en E: \ MASM. Hay varios archivos básicos para el diseño del ensamblador en este directorio: MASM.exe (el programa ensamblador desarrollado por Microsoft, utilizado para poner la fuente del lenguaje ensamblador desarrollado por el usuario El programa * .asm se ensambla en el archivo de destino * .obj), LINK.exe (utilizado para conectar el archivo de destino * .obj para generar el archivo ejecutable * .exe), debug.exe (archivo de depuración), EDIT.EXE (texto de pantalla completa (Editor)
Método de enlace:
monte c: e: \ wmasm, escriba C: después de presionar Entrar, presione Entrar
La unidad C actual está asociada con E: \ WMASM.
Escriba el comando dir en la unidad C actual, puede ver los archivos en el directorio E: \ WMASM
El error en la segunda y tercera línea de código se debe a que A se considera una variable en A8H y se debe agregar 0 al frente.
DATA SEGMENT
BUF1 DB 0A8H,9FH,0B4H,25H
BUF2 DB 78H,0FFH,0D3H,5CH
BUF3 DB 4 DUP(?)
DATA ENDS
Siguiente paso: conéctese al
comando DEBUG
Debug-R para ver y cambiar el contenido del registro de la CPU
Debug-D para ver el contenido de la memoria
Debug-E para reescribir el contenido de la memoria
Debug-U para traducir las instrucciones de la máquina en la memoria en instrucciones de ensamblaje
Debug-T para ejecutar Una instrucción de máquina
Debug-A escribe una instrucción de máquina en memoria en el formato de una instrucción de ensamblaje
Enlace original: https://blog.csdn.net/qq_36215315/article/details/79893476
Aunque la instrucción ADD en el código se compila sin error, el resultado es incorrecto y se debe usar ADC.