您的位置:逆风者 汇编技术 正文
原作者:www.upwinder.com 添加时间:2007-09-01 原文发表:2007-08-31 人气:101 来源:未知

一、数据传送指令
1.通用数据传送指令
MOV(Move)传送
PUSH(Push onto the stack)进栈
POP(Pop from the stack)出栈
XCHG(Exchange)交换
.MOV指令
格式为: MOV DST,SRC
执行的操作:(DST)<-(SRC)
逆风者
.PUSH进栈指令
格式为:PUSH SRC
执行的操作:(SP)<-(SP)-2
((SP) 1,(SP))<-(SRC)
.POP出栈指令
格式为:POP DST
执行的操作:(DST)<-((SP 1),(SP))
(SP)<-(SP) 2
.XCHG 交换指令
格式为:XCHG OPR1,OPR2
执行的操作:(OPR1)<-->(OPR2)

2.累加器专用传送指令
IN(Input) 输入
OUT(Output) 输出
XLAT(Translate) 换码
这组指令只限于使用累加器AX或AL传送信息.
.IN 输入指令
长格式为: IN AL,PORT(字节)
IN AX,PORT(字)
执行的操作: (AL)<-(PORT)(字节)
(AX)<-(PORT 1,PORT)(字)
短格式为: IN AL,DX(字节)
IN AX,DX(字)
执行的操作: AL<-((DX))(字节)
AX<-((DX) 1,DX)(字)
.OUT 输出指令
长格式为: OUT PORT,AL(字节)
OUT PORT,AX(字)
执行的操作: (PORT)<-(AL)(字节)
(PORT 1,PORT)<-(AX)(字)
短格式为: OUT DX,AL(字节)
OUT DX,AX(字)
执行的操作: ((DX))<-(AL)(字节)
((DX) 1,(DX))<-AX(字)
在IBM-PC机里,外部设备最多可有65536个I/O端口,端口(即外设的端口地址)为0000~FFFFH.其中前256个端口(0~FFH)可以直接在指令中指定,这就是长格式中的PORT,此时机器指令用二个字节表示,第二个字节就是端口号.所以用长格式时可以在指定中直接指定端口号,但只限于前256个端口.当端口号>=256时,只能使用短格式,此时,必须先把端口号放到DX寄存器中(端口号可以从0000到0FFFFH),然后再用IN或OUT指令来 传送信息.
.XLAT 换码指令
格式为: XLAT OPR
或: XLAT
执行的操作:(AL)<-((BX) (AL))

3.有效地址送寄存器指令
LEA(Load effective address)有效地址送寄存器
LDS(Load DS with Pointer)指针送寄存器和DS
LES(Load ES with Pointer)指针送寄存器和ES
.LEA 有效地址送寄存器
格式为: LEA REG,SRC
执行的操作:(REG)<-SRC
指令把源操作数的有效地址送到指定的寄存器中.
.LDS 指针送寄存器和DS指令
格式为: LDS REG,SRC
执行的操作:(REG)<-(SRC)
(DS)<-(SRC 2)
把源操作数指定的4个相继字节送到由指令指定的寄存器及DS寄存器中.该指令常指定SI寄存器.
.LES 指针送寄存器和ES指令
格式为: LES REG,SRC
执行的操作: (REG)<-(SRC)
(ES)<-(SRC 2)
把源操作数指定的4个相继字节送到由指令指定的寄存器及ES寄存器中.该指令常指定DI寄存器.

4.标志寄存器传送指令
LAHF(Load AH with flags)标志送AH
SAHF(store AH into flags)AH送标志寄存器
PUSHF(push the flags) 标志进栈
POPF(pop the flags) 标志出栈
.LAHF 标志送AH
格式为: LAHF
执行的操作:(AH)<-(PWS的低字节)
.SAHF AH送标志寄存器
格式为: SAHF
执行的操作:(PWS的低字节)<-(AH)
.PUSHF 标志进栈
格式为: PUSHF
执行的操作:(SP)<-(SP)-2
((SP) 1,(SP))<-(PSW)
.POPF 标志出栈
格式为: POPF
执行的操作:(PWS)<-((SP) 1,(SP))
(SP)<-(SP 2)

[1][2][3][4]下一页

相关文章

伪操作
Kmdkit的下载和安装
创建简单的窗口
数据转换操作
汇编语言与C语言的接口技术
多文档界面(MDI)
窗口子类化
DeviceIoControl接口
Win32调试API 第三部分
汇编中参数的传递和堆栈修正
用 MASM32 编写通用游戏改器流程
虚拟设备驱动程序结构
汇编语言中‘子程序’的设计方法
IDE的选择与配置
输入/输出保护
分段管理机制
HELLO WORLD进阶汇编程序系列
汇编语言的艺术(组合语言的艺术)--基本认
汇编语言---程式设计 (2)
汇编语言---程式设计 (3)

相关评论


本文章所属分类:首页 汇编技术

  热门关键字:
进制数据输出的通用程序 2007-09-12
汇编源码--showmem 2007-08-31
汇编源码--CLEAN 2007-08-31
汇编源码--hdr 2007-08-31
汇编源码--basload 2007-08-31
汇编源码--CHAR 2007-08-31
汇编源码--fxn 2007-08-31
汇编源码--alarm 2007-08-31
汇编源码--getsect 2007-08-31
汇编源码--DEV 2007-08-31
汇编源码--getspace 2007-08-31
汇编源码--frespace 2007-08-31
CIH文件型病毒检测消除程序 2007-08-31
Mixer Volume Ctrler V1.0 2007-08-31
汇编源码--COMINT 2007-08-31
自己用汇编语言写的一个病毒(源码... 2007-08-31
汇编源码--col 2007-08-31
汇编源码--BURNOUT 2007-08-31