云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 汇编语言指令详解

汇编语言指令详解

  • 62 次阅读
  • 3 次下载
  • 2025/6/13 17:40:18

1.假定DS=2000H,ES=2100H,SS=1500H,SI=00A0H,BX=0100H,BP=0010H,数据变量VAL的偏移地址为0050H,请指出下列指令源操作数是什么寻址方式?其物理地址是多少?

(1)MOV AX,0ABH (3)MOV (5)MOV (7)MOV

AX,VAL

(2)MOV AX,[100H] (4)MOV BX,[SI] (6)MOV CL,[BX][SI] (8)MOV [BP][SI],100

AL,VAL[BX] VAL[SI],BX

2.已知SS=0FFA0H,SP=00B0H,先执行两条把8057H和0F79H分别进栈的PUSH指令,再执行一条POP指令,试画出堆栈区和SP内容变化的过程示意图。(标出存储单元的地址)

5

第二讲

3.2 指令系统--数据传输、算术运算

回顾:8086/8088的内部结构和寄存器,8086/8088的工作过程。

8086/8088的寻址方式及操作数地址的计算。

重点和纲要:要求学生了解指令的功能,掌握数据传送类,算术运算类指令的使用方法。(掌握指令内涵,会用)

教学方法、实施步骤 回 顾 讲 授 提 问 小 结 时间分配 5”×2 40” ×2 3” ×2 2” ×2 教学手段 板书 计算机 投影仪 多媒体课件等

讲授内容:

3.2 8086/8088 指令系统

8086/8088的指令系统可以分为以下六个功能组。 1.数据传送(Data Transter) 2.算术运算(Arithmetic) 3.逻辑运算(Logic) 4.串操作(String menipulation) 5.程序控制(Program Control) 6.处理器控制(Processor Control)

一、数据传送指令

主要介绍 MOV,XCHG、堆栈和地址传送指令。

6

1.数据传送MOV指令

一般格式:MOV OPRD1,OPRD2

MOV 是操作码,OPRD1和OPRD2分别是目的操作数和源操作数。 功能:完成数据传送

具体来说,一条数据传送指令能实现:

⑴CPU内部寄存器之间数据的任意传送(除了代码段寄存器CS和指令指针IP以外)。

MOV AL,BL;字节传送 MOV CX,BX;字传送 MOV DS,BX

⑵立即数传送至CPU内部的通用寄存器组(即AX、 BX、CX、DX、BP、SP、SI、DI), MOV CL,4 MOV AX,03FFH MOV SI,057BH

⑶CPU内部寄存器(除了CS和IP以外)与存储器(所有寻址方式)之间的数据传送。

MOV AL,BUFFER MOV AX,[SI] MOV [DI],CX MOV SI,BLOCK[BP] MOV DS,DATA[SI+BX] MOV DEST[BP+DI],ES ⑷ 能实现用立即数给存储单元赋值

例如:MOV [2000H],25H

MOV [SI],35H

对于MOV 指令应注意几个问题:

①存储器传送指令中,不允许对CS和IP进行操作;

②两个操作数中,除立即寻址之外必须有一个为寄存器寻址方式,即两个存储器操作数之间不允许直接进行信息传送;

如我们需要把地址(即段内的地址偏移量)为AREAl的存储单元的内容,传送至同一段内的地址为AREA2的存储单元中去,MOV指令不能直接完成这样的传送,但我们可以用CPU内部寄存器为桥梁来完成这样的传送:

7

MOV AL,AREAl MOV AREA2,AL

③两个段寄存器之间不能直接传送信息,也不允许用立即寻址方式为段寄存器赋初值;如:MOV AX,0;MOV DS,AX ④目的操作数,不能用立即寻址方式。

2.堆栈指令

(简述堆栈的概念及存取特点,如先进后出)

包括入栈(PUSH)和出栈(POP)指令两类。仅能进行字运算。(操作数不能是立即数) ⑴ 入栈指令PUSH 一般格式:PUSH OPRD

源操作数可以是CPU内部的16位通用寄存器、段寄存器(CS除外)和内存操作数(所有寻址方式)。入栈操作对象必须是16位数。 功能:将数据压入堆栈

执行步骤为:SP=SP-2;[SP]=操作数低8位;[SP+1]= 操作数高8位

例如:PUSH BX

执行过程为:SP=SP-1,[SP]=BH;SP=SP-1,[SP]=BL,如图2-8所示。 ⑵ 出栈指令POP 一般格式:POP OPRD 功能:将数据弹出堆栈

对指令执行的要求同入栈指令。

例如:POP AX 图2-8

POP [BX] POP DS

3.交换指令 XCHG

一般格式:XCHG OPRD1,OPRD2 功能:完成数据交换

这是—条交换指令,把一个字节或一个字的源操作数与目的操作数相交换。

8

搜索更多关于: 汇编语言指令详解 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

1.假定DS=2000H,ES=2100H,SS=1500H,SI=00A0H,BX=0100H,BP=0010H,数据变量VAL的偏移地址为0050H,请指出下列指令源操作数是什么寻址方式?其物理地址是多少? (1)MOV AX,0ABH (3)MOV (5)MOV (7)MOV AX,VAL (2)MOV AX,[100H] (4)MOV BX,[SI] (6)MOV CL,[BX][SI] (8)MOV [BP][SI],100 AL,VAL[BX] VAL[SI],BX 2.已知SS=0FFA0H,SP=00B0H,先执行两条把8057H和0F79H分别进栈的PUSH指令,再执行一条POP指令,试画出堆栈区和SP内容变化的过程示意图。(标出存储单元的地址)

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com