微机原理及接口技术实验指导书.docx
- 文档编号:26832399
- 上传时间:2023-06-23
- 格式:DOCX
- 页数:12
- 大小:31.69KB
微机原理及接口技术实验指导书.docx
《微机原理及接口技术实验指导书.docx》由会员分享,可在线阅读,更多相关《微机原理及接口技术实验指导书.docx(12页珍藏版)》请在冰豆网上搜索。
微机原理及接口技术实验指导书
实验一标志寄存器应用
、实验目的与要求
1.掌握汇编程序的编译过程;
2.掌握8086的标志寄存器的特点
、实验内容
练习识另U8086标志寄存器的各种标志位。
PC机中状态位的表示如下:
标志位的名称
为1的对应符号
为0的对应符号
OF溢出标志
OV
NV
DF方向标志
DN
UP
IF中断允许标志
EI
DI
SF付勺标志
NG
PL
ZF零标志
ZR
NZ
AF半进位标志
AC
NA
PF奇偶标志
PE
PO
CF进位标志
CY
NC
DEBUG的命令及其功能:
命令
功能
格式
A
对语句进行汇编
A[<地址>]
C
比较内存内容
C<源地址范围><目标>
D
显示内存内容
D[<地址>]或[<地址范围>]
E
修改内存内容
E<地址>[<字节申>•••]
F
填充内存内容
F<地址范围><要填入的字节或申>
G
运行一个程序或程序段
G[=<始址>][<断点>•••]
H
十六进制的加减法运算
H<数值1><数值2>
I
读/显示输入字节
]<端口地址>
L
装入文件或磁盘扇区
L[<地址>[<盘号><相当扇区><扇区数>]]
M
传送内存块
M<源地址范围><目标地址>
N
定义文件名和参量
N<文件名>[<文件名>•••]
O
输出命令
。
<端口地址><字为>
P
单步,并跳过子程序
P[=<地址>][<执行条数>]
Q
退出DEBUG
Q
R
显示和修改寄存器内容
R[<寄存器>]
S
对字符进行检索
,<地址范围><要检索的字节>
T
跟踪执行和显示
T[=<地址>][<跟踪条数>]
U
对指令进行反汇编
U[<地址范围>]
W
写入文件或磁盘扇区
W[<地址>[<盘号><相当扇区><扇区数>]]
二、实验设备
微型计算机(80x86系列)四、实验参考程序
DATA
SEGMENT
A
DW
123
B
DW
456
SUM
DW
?
DATA
ENDS
CODE
SEGMENT
ASSUME
CS:
CODE,DS:
DATA
START:
MOV
AX,DATA
MOV
DS,AX
MOV
AX,A
SUB
AX,B
MOV
SUM,AX
MOV
AH,4CH
INT
21H
CODE
ENDS
、实验步骤
END
START
步骤一、用鼠标单击开始菜单,单击运行。
如下图所示:
步骤二、在运行窗口中键入cmd,回车进入命令提示符。
如下图所示:
步骤三、在命令提示符中编辑程序文件。
如下图所示:
1.C:
\>D:
回车
2.D:
\>CDMASM611回车
3.D:
\MASM611>CDBIN回车
4.D:
\MASM611>BIN>EDIT文件名.ASM
C:
\VlliD0V5\systeM3^\cMd_exe
hltrusuftHP5,1.2&00]
C:
\hacunent£MdSettlsti*ator>CBMftSKfill
3统找不到指定的路径:
C:
\Dacun^ntfandSettings\A[lninisti'ator>D:
D=\.>C»NAShKll
D;XiDBIN
D:
N>ED1TCUANG11.ASH
C:
\TIMD0TS\systeB32\od.eie-LIMICHAIGRUI.OBJ
to:
NMASMGll\BIN>MfiSMCHANCRUI.ASM
Microsflft
Inuokin^:
ML.EXE/I./ZmXc/TaCHANGAUI.ASM
Nicrosvft
Copyright
AssemJbling:
CHANGRU].ASM
p:
^MASn611\BIN>LIMKCHANGKUJ-OfiJ
Microsoft
Copyright
HunFile[CHAHGHUI.anJ:
.
回车
回车
回车
直到出现
C:
\ P: \MASKGllSB[H>Mn3MCHANGRU1.ASH Microsoft Copyiri^ht; Inudl HL.EME/I.zZnZc/TaCMANCRU1.ASM MirpnftnFt ^Uni^sinn6.11 Copyright Assembliiig: CHANGnUUASH D;\t1ASnt>ilxD]N>LlNKCMANGRUJ.OBJ rlicposoft 92 Copyright HunFile[CHANGRUI.exe]: Llai;rilc[nuL-nap]: LibrariesE_l£b]: DefinitioncFilsCnul.d«fJ: D: \HASM611XflIM> 步骤六、在命令提示行中运行程序。 如下图所示: D: \MASM611>BIN>debug文件名.exe回车 clC: \¥IHDOfS\systeB32\cBd.exe—debugchang^ui--ex'e B: kMASMfitlSBlN>MASMCHAHGRHl.ARM Microsoft SCoDyriqht Invokintf: HL.EXE/I./Em/c/TaCHANGRUI.ASH Fllcrosaft A3^cviblbi»«GHAHGFUI.ASM b>: M1fttn6U\BIH>LIMKCHANGRU1.ODJ rliciLoaoft RunFile(CNANGRUE_exe]: ^istPilernul.ntAp]: Librarias[.lib]: l)eFinitionsFile[nul.defJ: D: \MASM6LlxBIN>debugclhangru.i.exe 根据DEBUG的命令可以查看寄存器内容以及其它 DEBUG的命令及其功能: 命令 功能 格式 A 对语句进行汇编 A[<地址>] C 比较内存内容 C<源地址范围><目标> D 显示内存内容 D[<地址>]或[<地址范围>] E 修改内存内容 E<地址>[<字节申>•••] F 填充内存内容 F<地址范围><要填入的字节或申> G 运行一个程序或程序段 G[=<始址>][<断点>•••] H 十六进制的加减法运算 H<数值1><数值2> I 读/显示输入字节 ]<端口地址> L 装入文件或磁盘扇区 L[<地址>[<盘号><相当扇区><扇区数>]] M 传送内存块 M<源地址范围><目标地址> N 定义文件名和参量 N<文件名>[<文件名>•••] O 输出命令 。 <端口地址><字为> P 单步,并跳过子程序 P[=<地址>][<执行条数>] Q 退出DEBUG Q R 显示和修改寄存器内容 R[<寄存器>] S 对字符进行检索 ,<地址范围><要检索的字节> T 跟踪执行和显示 T[=<地址>][<跟踪条数>] U 对指令进行反汇编 U[<地址范围>] W 写入文件或磁盘扇区 W[<地址>[<盘号><相当扇区><扇区数>]] 六、实验结论 1.程序运行后变量SUM的值是多少? 2.程序运行前后标志寄存器的各标志位有何变化? 3.分析实验结果及所遇到的问题,并说明解决的方法。 答: 实验结果: 运行前: HK'0000EX=0000CX=0023DXM丽0SF=9060BP-=0O@0SI=0000£1=0000 DS=142EES-142ESS=143ECS-143FIP=0000NUUPEIPLNZHAPONC 143F;Q80O醐3E14MOUAS143E 运行后: fiX=FEB3BK=0000CX=0023DK=@000SP=BQQ0BP=QOQ0SI=0009DI=0000 DG=143EEG=142ESS=143ECG=143FIP=B00FNUUPEINGNZNAPOCV 143F: 000FB44CMOUAH,4C 标志位分别为NVUPEINGNZNAPOCY SUM值同当前的AX,SUM=FEB3 问题: 无 实验二指令寻址方式练习 、实验目的与要求 1.掌握汇编语言调试工具(DEBUG)的基本使用方法; 2.掌握8086的寻址方式。 、实验内容 练习识另U8086相关指令的寻址方式 DEBUG的命令及其功能: 命令 功能 格式 A 对语句进行汇编 A[<地址>] C 比较内存内容 C<源地址范围><目标> D 显示内存内容 D[<地址>]或[<地址范围>] E 修改内存内容 E<地址>[<字节申>•••] F 填充内存内容 F<地址范围><要填入的字节或申> G 运行一个程序或程序段 G[=<始址>][<断点>•••] H 十六进制的加减法运算 H<数值1><数值2> I 读/显示输入字节 ]<端口地址> L 装入文件或磁盘扇区 L[<地址>[<盘号><相当扇区><扇区数>]] M 传送内存块 M<源地址范围><目标地址> N 定义文件名和参量 N<文件名>[<文件名>•••] O 输出命令 。 <端口地址><字为> P 单步,并跳过子程序 P[=<地址>][<执行条数>] Q 退出DEBUG Q R 显示和修改寄存器内容 R[<寄存器>] S 对字符进行检索 ,<地址范围><要检索的字节> T 跟踪执行和显示 T[=<地址>][<跟踪条数>] U 对指令进行反汇编 U[<地址范围>] W 写入文件或磁盘扇区 W[<地址>[<盘号><相当扇区><扇区数>]] 其中<>表示输入的内容;[…]表示为可选项。 三、实验设备 微型计算机(80x86系列)。 四、实验参考程序 DSEGSEGMENT ARRAYDB11,56,78,8,76,90,96,33,21,06 COUNTDW$-ARRAY RELUSTDB? DSEGENDS SSEGSEGMENTPARASTACK'STACK' SDATDB50DUP(? ) TOPEQULENGTHSDAT SSEGENDS CSEGSEGMENT ASSUMECS: CSEG,DS: DSEG,SS: SSEG START: MOVAX,DSEG MOVDS,AX;寄存器寻址 MOVAX,SSEG MOVSS,AX MOVAX,TOP MOVSP,AX MOVBX,OFFSETARRAY MOVCX,COUNT;直接寻址 DECCX MOVAL,[BX];寄存器间接寻址 AGAIN: INCBX CMPAL,[BX] JAENEXT MOVAL,[BX] NEXT: DECCX JNZAGAIN MOVRELUST,AL MOVAH,4CH;立即寻址 INT21HCSEGENDSENDSTART 五、实验步骤 1.D: \MASM>MASMSY2.ASM 2.D: \MASM>LINKSY2.OBJ 3.D: \MASM>SY2.EXE 4.D: \MASM>DEBUGSY2.EXE 六、实验结论 1.指出参考程序中带下划线的指令中源操作数的寻址方式? 2.程序运行后AL中的值是多少? 3.分析实验结果及所遇到的问题,并说明解决的方法。 答: 运行结果: AX-00G0BK=0009CX-0900DX-0000SP-9032BP-OOSQSI-0000£1-0000 DS=143EES=142£SS=1^42CS=143FIP-0026NVUPEJFLZRNflF£NG 143F=0026B44CMOVAH,4C AL=60H 需要注意的问题: MASM为16位运行方式,在64位机上需要模拟器。 MASM不支持非8.3文件命名方式。 建议使用短目录及短文件名。 寻址方式: MOVAL,[BX]是按字节寻址而不是按字寻址。 MOVAX,SSEG MOVSS,AX MOVAX,TOP MOVSP,AX 此四句无必要,使用ASSUME伪指令后,SS段运行时将自动装入,SP将自动置数。 只需对DS或ES手动装入即可。 另外,此汇编程序中没有堆栈操作指令,可以不适用STACK段。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 接口 技术 实验 指导书