




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第5章 指令 指令系统和汇编语言程序设计 教学机的基本指令 算术逻辑运算指令ADD SUB AND XOR TEST CMP OR DEC INC SHL SHR数据移动指令MVRR MVRD LDRR STRR堆栈操作指令PUSH POP PSHF POPF输入输出指令IN OUT转移指令JMPA JR JRC JRNC JRZ JRNZ子程序调用与返回指令CALA RET MV MOVELD LOADST STORESH SHIFTJMP JUMPCAL CALLRET RETURNJR JUMPRELATIVE R REGISTERD DATAA ADDRESSF FLAGS 指令命名规则 单字指令分为三个主要部分 高8位是固定长度的操作码 最多支持256条指令 低8位有多种用法 给出1或2个寄存器的编号 或输入 输出的端口地址 或相对转移指令的8位的偏移量 双字指令的第二个字的内容可能是 立即数 直接地址 变址偏移量 操作码 目的寄存器 源寄存器 I O端口地址 相对转移指令的偏移量 立即数 直接地址 变址偏移量 8位4位4位 教学机的指令格式 用到的寻址方式寄存器寻址寄存器间接寻址立即数寻址直接地址寻址变址寻址相对寻址堆栈寻址IO端口地址 TEC 200016位机基本指令系统 TEC 200016位机基本指令系统 1 寄存器寻址的指令MVRRR1 R2指令长度是多少 执行时间是多少 2 立即数寻址指令MVRDR1 2003H的指令长度是多少 该指令有几个操作数 寄存器可以用几位数表示 立即数可以用几位数表示 操作码占去了几位 3 LDRRR1 R2 指令长度是多少 执行时间是多少 4 ADDR1 2003 ADDR2 0001H INCR1这三条指令格式分别是什么样 5 LDRAR1 2003H 和LDRRR1 R2 这两指令格式分别是什么样 6 JMPAADR和JRADR有什么区别 长度是多少 思考题 1 从指令的长度区分 从表5 1中可以看出 A组 ADDDR SR1字 DR为目标 SR为源 B组 JMPAADR2字 无条件跳转到ADR 其具体的指令可以是 ADDR1 R2 R2的内容和R1的内容相加 结果存入R1 机器码 000000000010001JMPA2003H 无条件跳转到内存2003H单元 机器码 10000000000000000100000000000011 指令的分类 从表5 1中可以看出 A组 INCDR单操作数 DR的内容加1 B组 LDRRDR SR 双操作数 DR SR 其具体的指令可以是 INCR2 R2内容加1 机器码 0000100100100000LDRRR1 R5 若R5的内容是100FH 则100FH单元的内容送到R1 机器码 1000000100010101 可见 并不是单操作数指令其指令长度就短 2 从操作数的个数区分 有寄存器寻址 寄存器间接寻址等7种 从表5 1中可以看出 A组 INCDR单操作数 DR的内容加1 B组 LDRRDR SR 双操作数 DR SR 3 从使用的寻址方式分 从表5 1中可以看出 A组 ADDDR SR加运算 B组 LDRRDR SR 读写内存OUTI OPORT输出指令 I OPORT R0 有运算 读写内存类指令 输入输出指令 转移指令 子程序调用指令 置进位标志指令等 4 从指令的功能区分 取指之后 各组指令执行的步骤 A组 1步 寄存器之间计算和传送 如ADDDR SRB组 2步 一次内存或I O读写 1 地址送地址寄存器AR 2 内存读写 如LDRRDR SR LDRR R2 R3 C组 3步 间接寻址P 135 1 将地址值送地址寄存器AR 2 读内存并送往地址寄存器AR 读回的是地址 3 读内存 并送往寄存器 读回的是数据 显然这样的指令执行时间要长 如LDARR2 10DFH D组 4步 如CALAADR 5 从指令的执行步骤分 单 双字的指令格式如下 8位操作码IR15 IR8的含义如下 指令格式及操作码 单字 无操作数 单字 单操作数 单字 双操作数 双字 单操作数 双字 双操作数 指令格式分类 教学计算机中的汇编程序的例子 例1 设计一个程序 在屏幕上输出显示一个字符 6 A2000 从2000H 内存RAM区的起始地址 开始2000 MVRDR0 0036 把字符 6 的ASCII码送入R02002 OUT80 在屏幕上输出字符 6 80为串口地址2003 RET 每个用户程序都必须用RET指令结束2004 按回车键即结束源程序的输入过程 教学计算机中的汇编程序的例子 例2 从键盘接受一个符号并将其显示到屏幕上 AA IN81SHRR0SHRR0JRNCAAIN80OUT80RET A20002000 IN812001 SHRR02002 SHRR02003 JRNC20002004 IN802005 OUT80 教学计算机中的汇编程序的例子 例3 设计一个程序 用次数控制在终端屏幕上输出 0 到 9 十个数字符 A2020MVRDR2 000A 送入输出字符的个数MVRDR0 0030 0 字符的ASCII码OUT80 输出保存在R0低位字节的字符DECR2 输出字符个数减1JRZ202E 判全部字符输出完否 已完 则转移到程序结束处PUSHR0 未完 保存R0的值到堆栈中 2028 IN81 查询接口状态 判字符的串行输出过程结束否SHRR0 JRNC2028 未完成 则循环等待POPR0 已完成 继续输出下一字符 从堆栈恢复R0的值INCR0 得到下一个要输出的字符JR2024 转去输出字符 202E RET 教学计算机中的汇编程序的例子 例4 从键盘上连续键入 0 到 9 之间的数字符并在屏幕上显示 非数字符结束程序 A2040 从地址2040开始输入MVRDR2 0030 用于判数字符的下界值MVRDR3 0039 用于判数字符的上界值 2044 IN81 判键盘上是否按了一个键SHRR0 即串行口是否有了输入的字符SHRR0JRNC2044 尚没有输入则循环测试IN80 把输入字符读到R0低位字节MVRDR1 00FFANDR0 R1 将R0的高位字节清0CMPR0 R2 判输入的字符 字符 0 否JRNC2053 是 则转到程序结束处CMPR3 R0 判输入的字符 字符 9 否JRNC2053 是 则转到程序结束处OUT80 输出刚输入的数字符JMPA2044 转去程序前边2044处等待输入下一个字符 2053 RET 教学计算机中的汇编程序的例子 例5 设计一个有读写内存和子程序调用指令的程序 功能是读出指定内存中的大写字母字符 将其显示到屏幕上 转换为小写字母后再写回原存储单元 E20F0 送入将被显示的6个字符 A F 到内存20F0开始的存储区域中 414243444546A2080MVRDR3 0006 指定被读数据的个数MVRDR2 20F0 指定被读 写数据内存区首地址 2084 LDRRR0 R2 读内存中的一个字符到R0寄存器CALA2100 调用子程序 入口地址为2100 完成显示 字符转换和写回内存的功能DECR3 检查输出的字符个数JRZ208C 完成输出则结束程序的执行过程INCR2 未完成 修改内存地址JR2084 转移到程序的2084处 循环执行规定的处理RET子程序在下一页 教学计算机中的汇编程序的例子续 A2100 输入用到的子程序到内存2100开始的存储区OUT80 输出保存在R0寄存器中的字符MVRDR1 0020 转换保存在R0中的大写字母为小写字母ADDR0 R1STRR R2 R0 写R0中字符到内存 地址同LDRR所用的地址 2105 IN81 测试串行接口是否完成输出过程SHRR0JRNC2105 未完成输出过程则循环测试RET 结束子程序执行过程 返回主程序运行过程中 可以直接看到屏幕上显示的内容 运行过后 再用D20F0命令看内存的20F0区域中保存的运行结果 6个大写的英文字母已经被修改为小写字母 006100620063006400650066 1将寄存器R2和R3的内容相加 结果存入R0 2将寄存器R2和R3的内容相加 如果有进位 寄存器R0的内容置1 否则置03若R1的内容是负数则置R0为 1 否则置0 提示 用TEST 4检测R3的是奇数 R0的内容置
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 三维激光摊铺检测技术
- 风险事故应急预案
- 策划经理年度工作总结
- 商业道德规范
- 物业工程技能培训
- 培训行业金牌顾问
- CRRT的应用和护理
- 2025春节前公司安全教育培训
- 管理教育培育培训课程
- 糖尿病的护理
- 多媒体设备日常维护与维修服务方案
- 卷烟工厂MES系统技术方案
- 辊压机培训ppt课件
- 译林小学英语5B教材分析
- 江苏省常州市2024届高一数学下学期期末质量调研试题(含解析)
- 新标准大学英语(第二版)综合教程2 Unit 1 A篇练习答案及课文翻译
- 冀教版英语小升初模拟试卷
- 食品用塑料包装容器工具等制品生产许可审查细则
- 财政部金融企业不良资产批量转让管理办法(财金[2012]6号)
- 物流供应商运作考评标准
- 招标投标活动异议和投诉处理工作规范
评论
0/150
提交评论