Files
Operating-System/Experiment/asm-exp/实验六/实验六-4_宏与子程序比较.asm
2026-06-25 00:09:09 +08:00

47 lines
688 B
NASM

; 实验六-4: 宏与子程序比较
; 功能: 对比宏与子程序的区别和各自适用场景
DATAS SEGMENT
MSG1 DB 'Macro Test$'
MSG2 DB 'Subroutine Test$'
DATAS ENDS
STACKS SEGMENT
DB 64 DUP(?)
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES, DS:DATAS, SS:STACKS
; 宏定义
PRINT_STRING MACRO STR
LEA DX, STR
MOV AH, 09H
INT 21H
ENDM
; 子程序定义
PRINT_PROC PROC
LEA DX, MSG2
MOV AH, 09H
INT 21H
RET
PRINT_PROC ENDP
START:
MOV AX, DATAS
MOV DS, AX
; 使用宏
PRINT_STRING MSG1
MOV DL, 0AH
MOV AH, 02H
INT 21H
; 使用子程序
CALL PRINT_PROC
MOV AH, 4CH
INT 21H
CODES ENDS
END START