ax //是16位的寄存器,最大可以存65535
ah,al //是8位的寄存器,最大可以存255
cs:ip //指向程序下一条执行的指令
ds //数据段寄存器
ss //栈段寄存器
sp //栈顶指针
物理地址=段地址*16(十进制)+偏移地址
物理地址=段地址*10(十六进制)+偏移地址
物理地址20030 段地址2000 偏移地址30
Debug的常用命令
r //查看和修改寄存器
d //查看内存
e //修改内存
u //反汇编
t //单步执行
a //写汇编指令
g //相当直接运行
p //执行完返回
jmp 2000:0030 //相当于mov cs,2000;mov ip,0030,但不能直接给段寄存器传数据
//计算2的n次方
2000:0000 mov ax,1
2000:0003 add ax,ax
2000:0005 jmp 2000:0003
//查看rom的刷写时间,但是无法修改
-d fff0:0000 ff
mov bx,1000
mov ds,bx
mov al,[0]
mov [10],al
//压栈和出栈,一个栈的最大是0-ffffh,64KB
mov ax,1000H
mov ss,ax
mov sp,ffea
push ax //sp减2
push bx //sp减2
ah,al //是8位的寄存器,最大可以存255
cs:ip //指向程序下一条执行的指令
ds //数据段寄存器
ss //栈段寄存器
sp //栈顶指针
物理地址=段地址*16(十进制)+偏移地址
物理地址=段地址*10(十六进制)+偏移地址
物理地址20030 段地址2000 偏移地址30
Debug的常用命令
r //查看和修改寄存器
d //查看内存
e //修改内存
u //反汇编
t //单步执行
a //写汇编指令
g //相当直接运行
p //执行完返回
jmp 2000:0030 //相当于mov cs,2000;mov ip,0030,但不能直接给段寄存器传数据
//计算2的n次方
2000:0000 mov ax,1
2000:0003 add ax,ax
2000:0005 jmp 2000:0003
//查看rom的刷写时间,但是无法修改
-d fff0:0000 ff
mov bx,1000
mov ds,bx
mov al,[0]
mov [10],al
//压栈和出栈,一个栈的最大是0-ffffh,64KB
mov ax,1000H
mov ss,ax
mov sp,ffea
push ax //sp减2
push bx //sp减2