如何编写一个汇编代码?

首先,我们需要安装一个编译器,如:ASM、MASM
在编译器中开始代码的编写:
定义数据段、代码段和堆栈段。
首先定义一个数据段 给你要定义的段起一个符号名,最好就是相对应的英文:DATA1。然后写入SEGMENT ‘DATA’。
用ORG定义偏移地址的值
接下来进行数据定义:先起一个数据变量名,然后确定数据类型,然后输入表达式也就是数据。可以定义多个数据变量。如:
DA DB 5 DUP(00H)
定义好数据后,结束数据段,使用 DATA1 ENDS

接下来定义堆栈段,与数据段大同小异
STACK 1 SEGMENT STACK’;此时SS已经自动装入

STACK1 ENDS

最后定义代码段,形如
CODE SEGMENT
ASSUME CS:CODE DS:DATA1 ;声明段
然后起一个标号START:后开始装入DS地址,如下:
MOV AX,DATA1
MOV DS,AX
都设置好后,就可以进行真正功能指令的编写了

代码端结束后,使用中断返回:
MOV AH 4CH
INT 21H
CODE ENDS来结束代码段
最后
END START;使CS:IP指向START
至此,一个完整的汇编代码就结束了。下面是实例:

DATA SEGMENT 'DATA'
ORG 0100H
DA1 DB 5 DUP(?)
DA2  DW  5 DUP(?,?)
DATA ENDS
STACK SEGMENT STACK
ST1 DB 10 DUP(0)
STACK ENDS
CODE SEGMENT  
	 ASSUME DS:DATA ,SS:STACK ,CS:CODE
START:  MOV AX,DATA
		MOV DS,AX
		LEA DI,DA1
		MOV CX,05H
LP:	    MOV AL,[DI]
		INC DI
		LOOP LP
		MOV AX 4CH
		INT 21
CODE ENDS
     END START		
原创文章 6 获赞 5 访问量 150

猜你喜欢

转载自blog.csdn.net/weixin_44868393/article/details/105816568