汇编 | 寄存器篇

8086CPU 内存中字的存储:CPU中,用16位寄存器来存储一个字,高8位存放高位字节,低8位存放低位字节。在内存中存储时,由于内存单元是字节单元,一个字要用两个地址连续的内存单元来存放。字的低位字节存在低位地址单元中,字的高位字节存在高位地址单元。 起始地址(低位)为N,则为N地址字单元。 CPU中DS寄存器通常用来存放要访问数据的段地址。 如下几种形式: mov 寄存器,数据 mov 寄

- 阅读全文 -

汇编 | loop和[bx]指令解析篇

编译运行过程 编程 :asm 编译:obj 连接:exe 加载内存中的程序运行 DS寄存器是存的是程序段地址,IP是程序偏移地址,DS:IP是程序起点,程序前面先创建PSP(256字节)(程序段前缀)的数据区,DOS利用PSP和加载的程序进行通信,256字节后为程序区。CS:IP是程序入口,存在程序区。 inc bx是bx中的内容加1 注意点: 在cx中存放循环的次数 loop指

- 阅读全文 -

汇编 | 认识DosBox篇

执行DosBox 将debug.exe的物理路径D:/DosBox-0.47定义为DosBox的C盘 mount C D:/DosBox-0.74(bedug.exe的存放路径) 访问C盘 C: 运行debug文件 debug 命令参数 -R查看、改变所有寄存器内容,注意:CS:IP(073F:0100)处存放的机器码是0000,对应的汇编指令是ADD [BX+SI],AL -R

- 阅读全文 -