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

我的博客

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

[2009-04-22 16:33] 9

9
转移指令的原理 可以修改IP,或同时修改CS和IP的指令统称为转移指令
·只修改IP时,称为段内转移,比如:jmp ax
·同时修改CS和IP时,称段间转移,比如:jmp 1000:0
由于转移指令对IP的修改范围不同,段内转移又分为:短转移和近转移
·短转移IP的修改范围为-128~127
·近转移IP的修改范围为-32768~32767
8086CPU的转移指令分为以下几类:
·无条件转移指令(如:jmp)
·条件转移指令
·循环指令(如:loop)
·过程
·中断
9.1操作符offset
由编译器处理的符号,它的功能是取得标号的偏移地址。
比如
as...
阅读全文 | 评论次数(4) | 浏览次数(817) | 所属类型(默认类型)

[2009-04-22 15:36] 第八章

assume cs:codesg, ds:datasg
datasg segment
db 'BaSiC'
db 'MinIX'
datasg ends
codesg segment
start:        
codesg ends
end start

SI DI bx

assume cs:codesg, ds:datasg
datasg segment
db 'welcome to masm!'
db '................'
datasg ends
codesg segment
start:        mov ax,datasg
        mov ds,ax
        ...
阅读全文 | 评论次数(1) | 浏览次数(620) | 所属类型(默认类型)

[2009-04-21 22:57] 第七章

and 
or

assume cs:code, ds:data
data segment
db 'unIX'
db 'foRK'
data ends
code segment
start:        mov al,'a'
        mov bl,'b'
        mov ax,4c00h
        int 21h
code ends
end start

db 'unIX' 相当于 db 75H,6EH,49H,58H
‘u’‘ n’‘I’‘X’的ASCII码分别是75H,6EH,49H,58H
mov al,'a' 相当于 mov al,61H

7.5...
阅读全文 | 评论次数(2) | 浏览次数(725) | 所属类型(默认类型)

[2009-04-21 22:40] 第六章学习笔记

dw 定义字型数据 define word

assume cs:code
code segment
dw 0123h,0456h,0789h,0abch,0defh,0fedh.0cbah,0987h
start:        mov bx,0
        mov ax,0

        mov cx,8
s:        add ax,cs:[bx]
        add bx,2
        loop s
        
        mov ax,4c00h
        int 21h
code ends
end start

用start标号,是标明第一条指令在哪!
以前没有数据定义,就没有start,现在有数据了,就要知道IP偏移地址在哪了 ...
阅读全文 | 评论次数(2) | 浏览次数(795) | 所属类型(默认类型)

[2009-04-21 16:22] 第四章第五章学习笔记

p81
Debug 的T命令在执行修改寄存器SS的指令时,下一条指令也紧接着被执行。<--这是中断机制。
p99  实验三

我们要完整地描述一个内存单元,需要两种信息:(1)内存单元的地址;(2)内存单元的长度(类型)
p100第五章
括号“()”表示一个寄存器或一个内存单元中的内容 如:(ax)表示ax中的内容
idata表示常量 mov ax,[idata]就表示mov ax,[1] mov ax,[2] 等

inc bx 的含义是bx中的内容加1

loop指令的格式是:loop 标号,cpu执行loop指令的时候,要进行两步操作:(1)(cx)=(cx)-1;...
阅读全文 | 评论次数(1) | 浏览次数(699) | 所属类型(默认类型)

[2009-04-21 10:02] 检测点3.2 (PDF p77)

(1)
mov ax,2000H
mov ss,ax
mov sp,0FH

(2)
mov ax,1000H
mov ss,ax
mov sp,00H

--------
push [0]操作:就是将DS:0中的数据压入到SS:SP中去
pop [E]操作:就是将SS:SP中的数据放到DS:E中去...
阅读全文 | 评论次数(2) | 浏览次数(688) | 所属类型(汇编作业)

[2009-03-25 22:22] 推荐博文 学习记录  DS、SS、SP

----------------57~59
DS寄存器,通常用来存放要访问数据的段地址。
mov bx,1000H
mov ds,bx
mov al,[0]

mov al,[0]
mov指令已知可以完成两种传送:
1、将数据直接送入寄存器;
2、将一个寄存器中的内容送入另一个寄存器。
现在还有第三种:
3、也可以用mov指令将一个内存单元中的内容送入一个寄存器。
[...]表示一个内存单元。[...]中的0表示内存单元的偏称地址,8086CPU自动取ds中的数据为内存单元的段地址。

如上所示:要将1000H送入DS,我们进行了两步,这是因为,8086CPU不支持...
阅读全文 | 评论次数(4) | 浏览次数(2001) | 所属类型(默认类型)

[2009-03-24 23:37] practise Debug Command

R:查看CPU寄存器的内容
D:查看内存中的内容
E:改写内存中的内容
U:将内存中的机器指令翻译成汇编指令
T:执行一条机器指令
A:以汇编的格式在内存中写入一条机器指令
---------------------------------------------
-r
AX=0000  BX=0000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=0B61  ES=0B61  SS=0B61  CS=0B61  IP=0100   NV UP EI PL NZ NA PO NC
0B61:0100 E4D...
阅读全文 | 评论次数(1) | 浏览次数(812) | 所属类型(汇编作业)

[2008-12-19 21:21] 汇编语言第2版(完全版)学习记录

指令和数据在存储器中存放,也就是我们平时所说的内存 p12(pdf中的页码,不是书中的页码)

存储器被划分成若干个存储单元。
存储器的容量是以字节为最小单位来计算的。 p14

CPU通过“地址总路线,数据总路线,控制总路线”与内存打交道。

存储器是内存,那么,寄存器是什么呢?第二章中答:是CPU中的。
疑问:从3号单元读取数据送入寄存器AX
MOV AX,[3]


[地址总线]
CPU通过地址总线来指定存储器单元的。地址总路线上能传送多少个不同的信息,CPU就可以对多少个存储单元进行寻址。p16

(一台PC机上用多少的内存,跟CPU地址总线的宽度有关) ...
阅读全文 | 评论次数(0) | 浏览次数(686) | 所属类型(默认类型)