计算机助记符,通用助记符系统

通用助记符系统(GMS General Mnemonic System)实际上就是若干不同微机的指令系统的功能性并集。 因此,每一具体机种 的指令系统以子集形式存在于其中 ( 原理上 , 通用助记符系统任意扩充以至包含全部需要的微机指令系统) 。 用此系统的助记符编写的程序可经过通用汇编程序转换成若干微机的目的码序列 , 从而在这些机器上运行。

中文名

通用助记符系统

外文名

GMS General Mnemonic System

应用领域

计算机等实    质

不同微机的指令系统功能性并集

操作方式

助记符

运行方式

通过汇编程序装换

通用助记符系统简介

编辑

语音

针对按机型而异的助记符的弊病,微处理机的通用助记符系统提出了一种更方便地实现微机软件共享,更有利于汇编语言程序设计教学以及混合多微机系统的开发和应用的通用汇编系统(General Assembly System,简称GAS)及其实现方法。[1]

GAS包含四个方面的内容,即通用助记符(GM)的概念和定义,通用助记符指令系统(General Mnemonic Instruction Set,简称GMIS);通用汇编语言(General Assem-bly Language,简称GAL),通用汇编程序(General Assembler,简称GA)和通用反汇编程序(General Disassembler,简称GDA)。

通用助记符指令系统实际上就是若干不同微机的指令系统的功能性并集。因此,每一具体机种的指令系统以子集形式存在予其中(原理上,通用助记符系统可任意扩充以至包含全部市售的微机指令系统)。用此系统的助记符编写的程序可经过通用汇编程序转移戒若干微处理器的机器码,从而在这些机器上运行。

GAS包含M6800,6502,8080,8085和Z80五种机器的指令系统,但由于这几种机器相当普遍,几乎占据了整个八位微处理器的应用领域,所以这样的GAS。实际上是“通用的矽。当然,随着有更强生命力的新机器的出现,GAS本身还应当进一步扩展。

通用助记符系统特点

编辑

语音

通用汇编系统具有下述几个重要特点;

(1)通用助记符采用一般ASCIl码键盘所具备的标准字符,它以简洁而直观的形式代表各种指令,使指令的操作对象,寻址方式及其功能一目了然,易于掌握,便于记忆。

(2)统一了多种机器共有操作的助记符形式,而各机的一些独特的指令操作则丰富了系统的总的功能。

(3)构造丁一种通用汇编程序和通用反汇编程序,能实现程序语言形式的各种灵活转换,从而便于研究、比较不同机器的性能。

不难看出,利用通用汇编系统的这些优点,我们就能很方便地提高系统性能。

①提高一般程序员经验和编程技术的利用率。按机型而异的助记符,使我们无法方便地把针对某一机种的已有程序改为另一机种的汇编语言程序,任何一种改变都得童编、重调程序。这在软件费用相对于硬件费用直线上升的今天,简直是无法容忍的。使用了GAS,则就可借助于GDA把某一机器上现有的目的程序转化为GAL编写的源程序,再通过GA汇编为能直接在另一种机器上运行的目的程序。这不但可省去对程序的改写、黄调等步骤,而且能使一个只懂一种汇编语言的用户,却可利用好多种机器上的汇编语言程序,并使其转化到他所能理解的那种汇编语言形式。

②提高微机软件教学功效。迄今为止的微机教科书通常都向学生介绍几种典型微机的指令系统。由于指令条目繁多,其助记符各自不同,很易使初学者望而生畏,或在注意了指令系统的细节特征时却忽视了它们的根本特性和原理。有了GAS,则就大大方便了形象化教学,而且在学习指令系统时,还可很容易地实现个别的分析比较和总体的概括综合。在学习汇编语言程序设计时,则可彻底摆脱对某一类机种的依附,不受特定指令系统的羁绊,有乖Il子对程序设计理论的学习和编程技巧的掌握。

⑧提高程序的可读性和降低编程时的出错率。通用助记符编写的程序虽不及高级语富,但却比较一般助记符更接近于人表述问题的方式,所以编制程序文本时可减轻注释工作量,且易于阅读理解,还可避免许多因使用指令量大而引起的技术性细小错误。

④提高不同机种的混合多微机系统的功能和降低开销。多微机系统对实时响应速度、信息传输控制、内部机问耦合都有较高的要求,面向过程的高级算法语言是力所不及的。然而若系统内各机只能接受自己那一种汇编语言,则系统就不能很好地作为整体来发挥作用,丽且还得为每个机器配上一套汇编程序,浪费了系统资源,也增加了开销,在系统中首先要掌握用的应当是各机最重要的和最普遍有效的特征。GAS则恰到好处地解决了这个问题,弩转箭一套通用汇编模块,当接受到系统给予的不同汇编数据基后,其就能把输入的程序汇编成相应的机器代码段,送到这一机器上运行。显然,系统将因而大大增强功能和提高效率。

通用助记符系统通用助记符(GM)

编辑

语音

GAS为达到其通用地“助记"功能而定义下列基本符号。 -’

通用助记符系统寄存器

r或s表示任一八位寄存器或累加器。rr或ss表示任一十六位寄存器或八位寄存器对。

通用助记符系统赋值号

“:"表示将其右端指定的或计算得到的结果送入其左端指出的存贮位。“:”可与各种运算符号组合使甩。 “:="表示筒单赋值;而“t=t"则表示符号左端和右端规定的寄存器或存贮单元的内容相互交换。

通用助记符系统数据和地址

用数字“12"表示单字节十六进制数据, “1234”则表示双字节十六进制数据。在数字前写上“M”则表示此数据为地址值。对某字节存贮单元中的位序,则在单元(地址)号后加上“·S”(表示第S位),S可取0,1,..7中的任一数值。

通用助记符系统状态标志

共有五种状态标志符号,即N(负数),Z(零),P(奇/偶),K(进位),V(,溢出)。

通用助记符系统操作助记符

操作助记符

操作名称助记符操作名称助记符

加+异或#

减-算术左移.2

带进位加++算术右移/2

带借位减---不带进位环移@

与&带进位环移K:@

非U逻辑右移->

成组环移AsM:4中断返回RI

转移J等待中断WI

转子程序JS软件中断SI

子程序返回RET空操作NULL

停机HALT

通用助记符系统各种寻址方式的表示

编辑

语音

下面介绍的是几种在微机中常见的寻址方法。

通用助记符系统立即寻址

在这种方式下, 指令中的数字就是操作数。用 "12” (单字节数 )和“1234”(双字节数)代表

通用助记符系统直接( 或扩充)寻址

指令中的数字为操作数的实际地址。M1234表示单字节操作地址,MM1234则表示对 (1234)、(1235)这两个相邻单元内容的双字节操作地址

通用助记符系统O页寻址

实际上属于直接寻址的一种特例,即其访问地址限于存贮器0 0 00 —0 0 FF 单元范围内。表示为MZ12 ,其意义等价于M0012。

通用助记符系统变址寻址

利用了变址寄存器 ,指令中只需指出偏移量和用的是哪个变址寄存器,M12X 和M12Y 就表示地址单元(IX)+0012和(IY)+0012。

通用助记符系统相对寻址

即利用程序计数器内容作为基址值 ,指令中只指出相对偏移量。寻址范围为(PC)-128到(PC)+127。

通用助记符系统寄存器直接寻址

指令中指出一个寄存器(对 ),而操作数则已事先放在寄存器中了 。助记符中表示形式就是“r”或者“rr”。

通用助记符系统寄存器间接寻址

在寄存器对中存放的是操作数的地址

通用助记符系统堆栈寻址

操作数存放在栈顶

参考资料

1.

白英彩 章仁龙.微机通用汇编语言程序设计:微机通用汇编语言程序设计,2009:7

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值