汇编网首页登录博客注册
hourace的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
最新留言
文章收藏
友情链接

[2009-07-31 19:47] 笔记

第五章        [bx]和loop指令
要完整的描述一个内存单元,需要(1)内存单元的地址(2)内存单元的长度(类型 字单元/字节单元)
[bx]表示一个内存单元,它的偏移地址在bx中。
Debug和编译器masm对“mov ax,[idata]”的解释是不同的:
Debug将它解释为“[idata]”是一个内存单元,“idata”是内存单元的偏移地址。
编译器masm将“[idata]”解释为“idata”。
以下指令在编译器masm中的含义:
Mov al,[0]      ;(al)=0,将常量0送入al中(与mov al,0含义相同)
Mov al,ds:[0]    ;al=...
阅读全文 | 评论次数(2) | 浏览次数(418) | 所属类型(默认类型)

[2009-07-31 15:02] 笔记

段地址是放在段寄存器中的
ALT+ENTER 窗口最大化/最小化
E命令向内存中写入机器码
U命令查看内存中机器码的含义
T命令执行内存中的机器码
D命令查看内存中的内容
A命令以汇编指令的形式向内存中写入指令
R命令查看、改变CPU寄存器的内容

D命令也提供了一种符合CPU机理的格式:“D段寄存器:偏移地址”,以段寄存器中的数据为段地址SA,列出从SA:偏移地址开始的内存区间中的数据。以下是4个例子:
(1)-RDS
     :1000
     -DDS:0              ;查看从1000:0开始的内存区间中的内容
(2)-RDS
     :1...
阅读全文 | 评论次数(0) | 浏览次数(400) | 所属类型(默认类型)

[2009-07-30 20:24] 笔记

第三章   寄存器(内存访问)
MOV 寄存器名,内存单元地址
[]表示一个内存单元    [0]中的0表示内存单元的偏移地址
8086不支持直接把数据送到段寄存器。MOV AX,1000H     MOV DS,AX
字=2Byte
MOV指令访问内存单元,可以在指令中只给出单元的偏移地址,此时的段地址默认在DS寄存器中。
栈是一种特殊的存储空间,其特点是先进后出(FILO)
栈顶的段地址放在SS中,偏移地址放在SP中。
PUSH  AX 的执行(1)SP=SP-2,SS:SP指向当前栈顶前面的单元。以当前栈顶前面的单元为新的栈顶。(2)将AX中的内容送入SS:SP指向的内存...
阅读全文 | 评论次数(0) | 浏览次数(169) | 所属类型(默认类型)

[2009-07-30 10:41] 笔记

第二章        寄存器(CPU工作原理)
写程序时要考虑数据的溢出问题。
内存单元构成的存储空间是一维的线性空间。
CPU通过地址总线送入存储器的必须是一个内存单元的物理地址。
在8086CPU中加电启动和复位(RET)后CS和IP被设置为CS=F000H,IP=FFFFH,即CPU从内存FFFF0H单元中读取第一条指令执行。
8086CPU不能用MOV指令直接来修改CS、IP的值。
CS:IP是代码段、DS是数据段、SS是栈段...
阅读全文 | 评论次数(0) | 浏览次数(153) | 所属类型(默认类型)

[2009-07-29 20:27] 汇编笔记

第一章        基础知识
汇编语言的主体是汇编指令。
寄存器:简单的讲是CPU中可以存储数据的器件,一个CPU中有多个寄存器。
编译器:简单的讲就是将写好的汇编源程序指令转换成机器指令,这样的程序被成为编译器。
汇编语言的组成(1)汇编指令:机器码助记符,有对应的机器码。(2)伪指令:没有对应的机器码,由编译器执行,计算机并不执行。(3)其他符号:如+、—、*、/等,由编译器识别,没有对应的机器码。
汇编指令是机器指令的助记符,同机器指令一一对应。
CPU可以直接使用的信息在存储器中存放。
在存储器中指令和数据没有任何区别,都是二进制信息。
一个存储单元可以存储8个bit,即8位。
...
阅读全文 | 评论次数(0) | 浏览次数(176) | 所属类型(默认类型)
页码数(1):  1