第五章:[BX]和loop的使用
1. inc指令
inc bx :bx的值增加1
inc即increase
2. 汇编源程序中的数字与进制
在写汇编源程序的过程中,
数字如果没有带后缀,
那么编译器(masm)将其默认为10进制,
在进行编译的时候,
编译器会将其转为相应的16进制。
可以将源程序中的数字带上后缀,
让编译器将之识别为相应的进制数,如:
0101010101B: 编译器将之识别为 2 进制,编译后会将之转为相应的16进制:0155H
071O : 编译器将之识别为 8 进制,编译后会将之转为相应的16进制...


- [fellow2468] 呵呵 谢谢指正!! 05/13 21:45
- [crazyman] 检测点的答案没有问题。 05/04 22:07
- [crazyman] cpu 执行ret指令是,相当于进行: pop ip pop cs ========== 05/04 22:05
- [martian] 博主的程序功能实现正确,要继续加油啊! 04/14 21:29
- [wdm] 当然我觉得博主分析的很有道理。 我得在去学习,研究一哈。 看看obj文件应该能知道吧。呵呵 04/12 16:05
- [wdm] data是经过编译链接后成为该段的一个偏移值.编译器编译mov ax, data时,不能把data定 04/12 15:57
- [wdm] 说的很清楚啊! 参考别人的意见的时候,也要反思自己的不足,这样才有参考的价值和意义。 04/03 10:41
- [游客] 分析正确。 04/02 22:07
- [taotling] XXXX*10H+FFFFH=20000H XXXX*10H=20000H-FFFFH XXXX 03/24 17:58
- [wdm] 分析正确! 03/23 19:54
- [fellow2468] 现在已经通过了第三章的检测,自己感觉学 的还可以,有了基础,我会更加认真的学习下面的内容! 03/27 22:05
- [fellow2468] 刚刚来到汇编网,希望得到大家的帮助!也希望自己有一个大的提高!! 03/19 21:35
[2008-02-16 15:07] 05天学习笔记
阅读全文 |
作者:taotling |
评论次数(3) |
浏览次数(920)
[2008-02-16 13:08] 04天学习笔记
第四章:
1.
进行单步跟踪,debug执行T命令的过程大体是:
(1) 设置控制程序执行的相关状态字
(保证执行被加载程序的一条指令后,暂停程序后面语句的执行),
执行权交给被加载程序;
(2) 执行被加载程序的当前指令,当然,紧接着的语句由于步骤 1 的设置不能获得执行,
执行权就又交给了debug;
(3) debug负责显示各寄存器状态及相关信息的子程序块执行:
a.保存当前被加载程序的状态,即保存相关寄存器的状态等信息
(保存位置:栈空间;实现方式:入栈操作);
b.显示各寄存器的状态(a步骤后栈中的某些数据)及相关...
1.
进行单步跟踪,debug执行T命令的过程大体是:
(1) 设置控制程序执行的相关状态字
(保证执行被加载程序的一条指令后,暂停程序后面语句的执行),
执行权交给被加载程序;
(2) 执行被加载程序的当前指令,当然,紧接着的语句由于步骤 1 的设置不能获得执行,
执行权就又交给了debug;
(3) debug负责显示各寄存器状态及相关信息的子程序块执行:
a.保存当前被加载程序的状态,即保存相关寄存器的状态等信息
(保存位置:栈空间;实现方式:入栈操作);
b.显示各寄存器的状态(a步骤后栈中的某些数据)及相关...
阅读全文 |
作者:taotling |
评论次数(4) |
浏览次数(908)
[2008-02-16 13:07] 03天学习笔记
第三章:
1.成对的段地址与偏移地址(相应指针地址)
CS:IP ---- 形成存放当前将要被CPU读取的指令的物理地址
CS(Code Segment)是代码段寄存器。
IP(Instruction Pointer)是指令指针寄存器。
这里CS是一个内存空间(代码段)的段地址,
而IP是这个代码段的偏移地址。
SS:SP ---- 形成当前栈(Stack)顶的物理地址。
SS(Stack Segment)堆栈段寄存器。
SP(Stack Pointer)堆栈指针寄存器。
这里的SS相当于一个栈段(一段特殊的内存空间)的段地址。
...
1.成对的段地址与偏移地址(相应指针地址)
CS:IP ---- 形成存放当前将要被CPU读取的指令的物理地址
CS(Code Segment)是代码段寄存器。
IP(Instruction Pointer)是指令指针寄存器。
这里CS是一个内存空间(代码段)的段地址,
而IP是这个代码段的偏移地址。
SS:SP ---- 形成当前栈(Stack)顶的物理地址。
SS(Stack Segment)堆栈段寄存器。
SP(Stack Pointer)堆栈指针寄存器。
这里的SS相当于一个栈段(一段特殊的内存空间)的段地址。
...
阅读全文 |
作者:taotling |
评论次数(4) |
浏览次数(854)
[2008-02-10 23:21] 02天学习笔记
第二章内容:
(1) Byte与Word
出于对兼容性的考虑,8086CPU可以处理两种尺寸的数据,
即Byte与Word。
Byte可以用8086的寄存器的高位(High)或低位(Low)来存放。
Word由两个字节组成,这两个字节可分别存放在8086寄存器的高位和低位。
分别称为高位字节和低位字节。
(2)四种进制的英文
Binary :二进制
Octal :八进制
Decimal :十进制
Hexadecimal :十六进制
(3)段地址、段起始地址(基础地址)、偏移地址、物理地址:
段地址:
段地址是CPU给内存分段后,...
(1) Byte与Word
出于对兼容性的考虑,8086CPU可以处理两种尺寸的数据,
即Byte与Word。
Byte可以用8086的寄存器的高位(High)或低位(Low)来存放。
Word由两个字节组成,这两个字节可分别存放在8086寄存器的高位和低位。
分别称为高位字节和低位字节。
(2)四种进制的英文
Binary :二进制
Octal :八进制
Decimal :十进制
Hexadecimal :十六进制
(3)段地址、段起始地址(基础地址)、偏移地址、物理地址:
段地址:
段地址是CPU给内存分段后,...
阅读全文 |
作者:taotling |
评论次数(4) |
浏览次数(1054)
[2008-02-09 04:55] 01天学习笔记
(1) bit与Byte
bit是计算机中最小的信息单位,
在表示数据传输速度的时候一般用bit来做为单位来表示。
在表示存储器的容量的时候,byte字节是最小的单位。
(2) 地址总线与地址总线宽度
CPU是通过地址总线来指定存储器单元的。
地址总线上能传送多少个不同的信息,
CPU就可以对多少个存储单元进行寻址。
记得:存储单元的单位为Byte而不是bit。
如一个CPU有10根地址线,
一根导线可以传送的稳定状态只有两种,
高电平或是低电平。用二进制表示就是1或0,
1...
bit是计算机中最小的信息单位,
在表示数据传输速度的时候一般用bit来做为单位来表示。
在表示存储器的容量的时候,byte字节是最小的单位。
(2) 地址总线与地址总线宽度
CPU是通过地址总线来指定存储器单元的。
地址总线上能传送多少个不同的信息,
CPU就可以对多少个存储单元进行寻址。
记得:存储单元的单位为Byte而不是bit。
如一个CPU有10根地址线,
一根导线可以传送的稳定状态只有两种,
高电平或是低电平。用二进制表示就是1或0,
1...
阅读全文 |
作者:taotling |
评论次数(4) |
浏览次数(764)
页码数(1):
1