计算机原理及系统结构2
计算机原理及系统结构 第十八讲 第5章 本章主要内容 指令格式与寻址方式概述 汇编语言程序设计 指令与指令系统概述 指令格式与寻址方式 计算机原理及系统结构 第十九讲 计算机原理及系统结构 第二十讲 教学机基本指令 数据移动指令 MVRR、MVRD、LDRR、STRR、PUSH、POP、PSHF、POPF、IN、OUT 算术逻辑指令 ADD、SUB、AND、XOR、TEST、CMP、OR、DEC、INC、SHL、SHR 控制转移指令 CALA、RET、JMPA、JR、JRC、JRNC、JRZ、JRNZ TEC-2000 16位机基本指令系统 TEC-2000 16位机基本指令系统 计算机原理及系统结构 第二十一讲 教学机寻址方式 立即数寻址 MVRD DR, DATA 寄存器寻址 MVRR R1,R2 寄存器间接寻址 LDRR DR,[SR] 直接寻址 CALA ADR 变址寻址 JRC ADR 计算机原理及系统结构 第二十二讲 教学机指令功能及其在程序中的作用 指令功能及其在程序中的作用 例5.1:在显示器屏幕上循环显示95个可打印字符。 例5.2:把字符A~F写到内存2040~2045单元中,然后读出并在屏幕上显示。 例5.3:从键盘输入字符并送到显示器显示。 本章主要内容 指令格式与寻址方式概述 汇编语言程序设计 汇编语言程序设计 机器语言是计算机硬件能够直接识别和运行的指令的集合,是二进制码组成的指令,对程序设计人员来说很难以接受,直接用机器指令设计程序实在是太困难了。 汇编语言大体上是对计算机机器语言的符号化处理的结果,再增加一些为方便程序设计而实现的扩展功能。汇编语言至少有2大优点。首先实现用英文单词或其缩写形式替代二进制的指令代码,更容易记忆和理解;其次可以选用英文单词来表示程序中用到的数据(常量和变量),并且避免程序设计人员亲自为这些数据分配存储单元,而是留给汇编程序自己去安排,这样的语言就达到了实用的最基本的标准。如果在此基础上,再在支持程序的不同结构特性(如循环和重复执行等结构),子程序所用哑变元替换为真实参数等方面提供必要的支持,使用这个语言设计程序就更为方便了。汇编语言程序经汇编器程序翻译为机器语言程序后方可运行。 高级语言又称算法语言,它的实现思路,不再是过分地“靠拢”计算机硬件的指令系统,而是着重面向解决实际问题所用的算法,更多的是是为方便程序设计人员写出自己解决问题的处理方案和解题过程的程序。目前常用的高级语言有BASIC、C、C++、,PASCAL、JAVA、PROLOG、VHDL等几百种。用这些语言设计出来的程序,通常需要经过一个叫做编译程序的软件先编译成机器语言程序,或者首先编译成汇编程序后,再经过汇编操作后得到机器语言程序,才能在计算机的硬件系统上予以执行;也可以由一个叫做解释执行程序的软件,逐条取来相应高级语言程序的每个语句并直接控制其完成执行过程,而不是把整个程序编译为机器语言程序之后再一起交给硬件系统加以执行。 教学计算机中的汇编程序的例子 例5.4:设计一个程序,在屏幕上输出显示一个字符‘6’。 A 2000 ;地址从16进制的2000(内存RAM区的起始地址)开始 2000: MVRD R0,0036 ;把字符‘6’的ASCII码送入R0 2002: OUT 80 ;在屏幕上输出显示字符‘6’,80为串行接口地址 2003: RET ;每个用户程序都必须用RET指令结束 2004: (按回车键即结束源程序的输入过程) 教学计算机中的汇编程序的例子 例5.5:设计一个程序,用次数控制在终端屏幕上输出‘0’到‘9’十个数字符。 A 2020 MVRD R2,000A ;送入输出字符的个数 MVRD R0,0030 ;‘0’字符的ASCII码 OUT 80 ;输出保存在R0低位字节的字符