微机原理及应用试验指导书(3)
实验三 逻辑运算程序
实验目的
8088指令:AND OR XOR NOT
实验内容
将字单元内容二进制最高位清“0”
自己先在3040H单元放个二进制首位为1的字,结果保存在3042H中(注意:字的高位在后)
CODE SEGMENT
ASSUME CS:CODE,DS:CODE,ES:CODE ORG 3000H
START: MOV AX,DS:[3040H]
AND
MOV
CODE
AX,7FFFH
DS:[3042H],AX
JMP $ ENDS
END START
将单元内容最高位置“1”
思考:如果屏蔽最低位,应如何修改?
将字的二进制最高位置“1”
CODE SEGMENT
ASSUME CS:CODE,DS:CODE,ES:CODE ORG 4000H
START: MOV AX,DS:[1200H] OR AX,8000H MOV DS:[1202H],AX JMP $ CODE ENDS
END START
思考:其余位置“1”如何修改?
将字节单元内容二进制最高位求反
CODE SEGMENT
ASSUME CS:CODE,DS:CODE,ES:CODE ORG 5000H
START: MOV AL,DS:[2200H] XOR AL,80H
MOV DS:[2201H],AL JMP $ CODE ENDS END START
思考:
如果要求反任一位或几位,应如何修改? 若将NOT指令加上完成上述程序,应如何修改?
9
实验四 拆字及位移程序
实验目的
掌握汇编语言 设计和调试方法。
实验内容
把4000H单元的字节内容拆开,高位送4001H低位,低位送4002H低位,4001H、4002H 的高位清零,一般本程序用于把数据送显示缓冲区时用。
程序框图及程序
CODE SEGMENT
ASSUME CS:CODE,DS:CODE,ES:CODE
S2:
ORG MOV MOV MOV MOV SHR INC MOV AND INC MOV JMP ENDS
3000H BX,4000H AL,[BX] AH,AL CL,4 AH,CL BX
[BX],AH AL,0FH BX
[BX],AL $
CODE
END S2 实验步骤
用连续或单步方式运行程序,检查4000H-4002H中内容变化情况。
思考
如何用断点方式调试本程序;
如果高位送4002H低位,低位送4001H低位,如何修改。
位移程序
16位数左移一位
在1200H单元放一个字,移位结果在1202H单元里查看
CODE SEGMENT
ASSUME CS:CODE,DS:CODE,ES:CODE
10
ORG START: MOV
SHL MOV HLT CODE
2000H
AX,DS:[1200H] AX,1
DS:[1202H],AX
ENDS
END START
思考:上述程序中SHL是否可以改用SAL?用指令在用法上有无区别?
若为8位数左移一位,如何修改程序?
试编写32位数右移二位程序(提示:利用带进位位移)
11
实验五 拼字程序及分支程序、堆栈程序
实验目的
进一步掌握汇编语言设计和调试方法 。
实验内容
把4000H、4001H的低位分别送入4002H高低位,一般本程序用于把显示缓冲区的数据取出拼装成一个字节。
程序框图及程序
CODE SEGMENT
ASSUME CS:CODE,DS:CODE,ES:CODE
ORG 3040H
S3: MOV BX,4000H
MOV AX,[BX] AND AL,0FH MOV CL,4 SHL AL,CL AND AH,0FH OR AL,AH ADD BX,2 MOV [BX],AL JMP $
CODE ENDS END S3 实验步骤
单步或用断点方式运行程序,检查4002H内容变化情况。
分支程序
计算 Y=X+5 X<0
Y=X+25 0<X<25 Y=X+100 其它
利用单步执行查看变化,X值按16进制分别放入初值,填入AX中;单步到HLT时查看BX中Y值 注意:题目中为10进制,内存中要换成16进制。
其中X放入AX中 Y在BX中
CODE SEGMENT
12
ASSUME CS:CODE,DS:CODE,ES:CODE
ORG 3000H
START:AND AX,AX JLE LESSE CMP AX,25
JC ADD
BELLOW AX,100 BX,AX $ AX,5 BX,AX HALT AX,25 BX,AX HALT START
MOV HALT: JMP LESSE: ADD
MOV JMP
BELLOW:ADD MOV CODE
思考题:
JMP ENDS END
有一个按从小到大顺序排列的无符号数的数组,其首地址存放在DI寄存器中,数组中的第一个单元
存放着该数组的长度。在AX中放一个无符号的数,要求在该数组中查找(AX),如找到则使CF=0,并在SI中给出该元素在数组中的偏移地址;如未找到则使CF=1。编写程序实现。(试用折半查找法)
堆栈程序 利用单步观察堆栈指针和堆栈指针所指的存储单元内容的变化,熟悉堆栈的用法。 CODE SEGMENT
ASSUME CS:CODE,DS:CODE,ES:CODE,SS:CODE
SL:
ORG MOV
3000H SP,2000H AX,3000H BX,5000H AX BX AX BX $
MOV MOV PUSH PUSH POP POP JMP CODE ENDS END SL
13
…… 此处隐藏:485字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [综合文档]应答器设备技术规范(征求意见稿)A1
- [综合文档]教师 2012年高考政治试题按考点分类汇
- [综合文档]保险公司的总经理助理竞职演说
- [综合文档]卫生应急大练兵大比武活动考试--题库(
- [综合文档]徐州经济技术开发区总体规划环境影响报
- [综合文档]汉语拼音表(带声调)
- [综合文档]二年级 上 思维训练( 1~18)
- [综合文档]特色学校五年发展规划
- [综合文档]机床经常出现报警“X1轴定位监控”
- [综合文档]《电子技术基础》21.§5—2、3、4 习题
- [综合文档]浙江省深化普通高中课程改革
- [综合文档]CRISP原理 - 图文
- [综合文档]2017年电大社会调查研究与方法形考答案
- [综合文档]浅析建筑施工安全毕业论文
- [综合文档]《回忆我的母亲》名师教案
- [综合文档]装饰装修工程监理规划
- [综合文档]三下乡心得体会-文艺
- [综合文档]柱计算长度系数 - 图文
- [综合文档]全流程思考,提高燃电系统热电转换率--
- [综合文档]2018年嘉定区中考物理一模含答案
- 433M车库门滚动码遥控器
- 8、架空线路施工规范
- 大学四年声乐学习的体会
- 新北师大版五年级数学上册《轴对称再认
- 部编版五年级上册语文第六单元小结复习
- 小学六年级英语形容词用法
- 第2课 抗美援朝保家卫国 课件01(岳麓版
- 2015年天津大学运筹学基础考研真题,考
- 微机计算机控制技术课后于海生(第2版)
- 安全教育实践活动
- Delphi程序设计教程_第1章_Delphi概述
- 第八讲 工业革命与启蒙运动
- 《中华人民共和国药典》2005年版二部勘
- 科粤版九年级化学2.3构成物质的微粒(1)
- 西师大版数学三年级下册《长方形、正方
- ch6_冒泡排序演示
- 第4章 冲裁模具设计
- 浙江中小民营企业员工流失论文[终稿]
- 再议有线数字电视市场营运模式
- 昆明供水工程监理大纲




