(2)8位教学计算机的汇编语言
如何使用8位机系统的汇编语言,与系统的硬件配置有关。
当系统中不包括主要作为仿真终端使用的PC机,而是使用计算机终端设备时,就只能使用监控程序提供的单条汇编命令A,通过计算机终端,逐条输入并汇编每一个汇编语句,使用起来还是足够方便的,缺点是不能支持伪指令,即不能使用符号代表变量与汇编语句标号,一般情况下要使用绝对地址,对设计较小的汇编程序还是可以忍受的,对长一些的汇编程序则要困难一些。具体操作方法是:
当教学计算机系统加电并正常启动起来之后, 从键盘上打入监控程序的A(ASSEMBLY)命令, 格式为:
A跟一个空格字符再跟指定的内存地址并回车。
接下去,实验者可逐条打入所要的汇编语句。这种用法与PC机上的DEBUG很类似,系统会逐语句进行汇编,产生教学机的指令代码,并从给定地址逐条连续存放。若发现给出的汇编语句有错,
则指出错误位置,并要求重新打入正确的语句。这个过程一直继续到实验者在应该输入语句的位置不再输入语句而直接打回车键结束。例如:
A 2000 地址从16进制的2000(内存RAM区的起始地址)开始
2000: MVD R0, 36 ;把字符'6'的ASCII码送入R0
2002: OUT 00 ;在屏幕上输出显示字符'6', 00为串行接口地址
2003: MVD R2, 3F ;延迟一段时间,以等待串行口输出的正常完成
2005: DEC R2 ;
2006: JNZ 2005
2007: JR 2000 ;返回程序入口继续循环执行这段程序
2009: RET ;每个用户程序都必须用RET指令结束
2008: (按回车键即结束输入过程)
这就建立了一个从主存2000h地址开始的小程序。在这种方式下,所有的数字都约定使用16进制数,故数字后不能跟字符h,使监控程序实现起来更简单。每个用户程序的最后一个语句一定为RET汇编语句。因为监控程序是选用类似子程序调用方式使实验者的程序投入运行的,仅在用户程序用RET语句结束时,在用户程序正常结束后,才能保证正确返回到监控程序的断点,保证监控程序能继续控制教学机的运行过程。
|