一、汇编语言
(一)寄存器
AX------accumulator 累加寄存器 AL AH
CX------counter 计数寄存器 CL CH
DX------data 数据寄存器 DL DH
BX-------base 基址寄存器 BL BH
SP-------stack pointer 栈指针寄存器
BP-------base pointer 基址指针寄存器
SI--------source index 源变址寄存器
DI--------destination index 目的变址寄存器
ES--------extra segment 附加代码段寄存器
CS--------code segment 代码段寄存器
SS--------stack segment 栈段寄存器
DS--------data segment 数据段寄存器
FS---------segment part2 没有名称
GS---------segment part3 没有名称
(二)BYTE、WORD、DWORD
上述三个关键字指定数据大小,在汇编语言指定内存时,要用下面这种固定写法:
数据大小 [地址]
BYTE表示1个字节(8位)----使用的存储单元就是地址所指的字节
WORD表示2个字节(16位)----与所指地址相邻的一个字节也会成为这个指令的操作对象
DWORD表示4个字节(32位)----与所指地址WORD相邻的的两个字节也会成为这个指令的操作对象
1.使用MOV指令时,源数据和目的数据的位数必须相同
2.在汇编语言程序较为复杂时,可尝试将其改写为C语言风格的代码加以理解
二、Makefile
target: denpendeccy
command
例子:
ip1.bin : ip1.nas Makefile 如果要生成ip1.bin文件,需要ip1.nas和Makefile两个文件
../z_tools/nask.exe ip1.nas ip1.bin ip1.lst 如果两个文件都存在,就用这个命令来生成