第四章 第一个程序
首先回顾一下栈的基础知识:
栈的特点:先入后出
对于8086,其pop、push指令操作如下:
pop:数据出栈,sp+2
push:sp-2,数据入栈
然后回顾一下win32的debug指令:(出于个人习惯,有些步骤不是必要的)
首先进入debug
cd c:\
c\>:debug
指令r:查看、修改寄存器的值,可以操控cs,ip。但是在汇编程序中不可以直接修改ip
r 查看寄存器值
r register_name 修改寄存器值
指令d: 查看内存中的内容
d 段地址:偏移地址 <结尾偏移地址>
结尾偏移地址可以省略,默认显示128个内存单元。如果参数全部缺省,从debug预设地址开始
指令e :改写内存中的内容
e 段地址:偏移地址 内容(字符用引号括起)
指令u:将机器码翻译为汇编代码
u 段地址:偏移地址
指令t:单步执行,从cs:ip地址开始
指令a:以汇编形式向内存中写入汇编指令
a 段地址:偏移地址
4.1 源程序到执行
编写-编译、链接-执行