- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编指令集
本节根据指令的功能来分,提供六张表来说明指令集的概况:
累加器、算数和逻辑指令(表2);
辅助寄存器和数据页指针指令(表3);
TREG、PREG和乘法指令(表4);
转移指令(表5);
控制指令(表6);
I/O和存储器操作(表7)。
在每张表中,指令按字母顺序排列。执行每条指令所需要的周期数在表中给出,所有指令都假设从内部程序存储器和内部数据存储器中执行,指令的周期数适用于单指令执行,不适用于重复方式。编程时,用户必须对每条指令的寻址方式了解清楚,因此这里也在表中给出了每条指令的寻址方式。由于指令的操作码对用户编程没有多大指导意义,在这里就没有列出来。
为了参照起见,我们先定义这六张概述表的符号意义:
ACC 累加器。
AR
BITX
CM 辅助寄存器。 4位数值,用于指定数据存储器数值中的哪一位将被BIT指令所测试。 2位数值,CMPR指令执行CM值所声明的比较:
若CM=00,测试当前AR=AR0否;
若CM=01,测试当前ARAR0否;
若CM=10,测试当前ARAR0否;
若CM=11,测试当前AR≠AR0否。
Shift
TP 4位右移量。 用于条件执行指令的2位数值,代表如下4种条件:若BIO引脚为低,
TP=00;若TC位=1,TP=01;若TC位=0,TP=10;无条件TP=11。 ARX 用于LAR和SAR指令的3位数据值,指定被操作的辅助寄存器。
52
表2 累加器、算数和逻辑指令 ABS
周期
|(ACC)|→ACC 1
(ACC)+(数据存储器地址)×1
2shift→ACC
(ACC)+(数据存储器地址)×
216→ACC 1(ACC)+k→ACC 1
shift
(ACC)+lk×2→ACC 2
指令功能
(ACC)+(数据存储器地址)+(C)→
ACC
寻址方式
直接/间接
直接/间接短立即数长立即数
指令说明
ACC取绝对值
移位时低位填0,若SXM=1,高位用符号扩展;若SXM=0,高位填0;结果存在ACC中,该指令使C=0。寻址短立即数时,加操作不受SXM的影响,且不能重复执行。
ADD
ADDC 1
直接/间接该指令抑制符号扩展
该指令抑制符号扩展;无论SXM为何值,数据均作无符号16位数看待。当SXM=0和
直接/间接
移位次数等于0时,ADDS与ADD指令结果相同。
被寻址的数据寄存器单元的内容左移并加
直接/间接到ACC,移位次数由TREG的低4位确定,
SXM位的值控制移位时是否作符号扩展。
使用直接/间接寻址,ACC的低位字与数据直接/间接存储器单元的值作与运算,结果存在ACC
的低字,ACC的高位字清0。使用立即数寻
址,长立即数可以左移,移位时,32位中长立即数未被长立即操作数填充的位均被清零。
长立即数 累加器中的内容用其逻辑反取代 指定的数据存储器单元的内容或16位常数直接/间接左移并加载到ACC,低位填0,若SXM= 1,高位用符号位扩展;若SXM=0,则填直接/间接0。
长立即数
指定的数据存储器单元的内容或用0扩展
直接/间接的8位常数左移并加载到ACC的低16位, ACC的高位填0。数据作为16位无符号数短立即数处理,无论SXM为何值,本指令都不进行
符号扩展。
将数据存储器单元的内容左移后加载到
直接/间接ACC。左移位数由TREG的低4位确定。SXM
的值决定ACC高位是否符号扩展。
将ACC的内容换成其相反数。当对0000h作NEG操作时,OV置1。
若OVM=1,ACC=7FFFh,若OVM=0,则ACC
=8000 0000h,只要ACC不等于0则C=0,当ACC=0,则C=1。
NORM指令将ACC中的有符号数进行规格化。对定点数进行规格化即将其分成指数和尾数,为此对位31和位30作异或运算
间接
即可确定位30是数值还是符号。对当前AR的缺省修改方式是加1。该指令对正、负二进制补码均适用。由于该指令在流水
53
ADDS
(ACC)+(数据存储器地址)→
ACC (ACC)+(数据存储器地址)左移(TREG(3:0))位→ACC
(15:0)
1
ADDT 1
AND
CMPL
LACC
LACL
1
(ACC(15:0))AND (数据存储器地
址) →ACC(15:0)
0→ACC(31:16)
shift
(ACC(31:16))AND lk ×2→ACC2
16
(ACC(31:16))AND lk ×2→ACC
(ACC)的逻辑反→ACC 1
shift
(数据存储器地址)×2→
1
ACC
16
(数据存储器地址)×2→ACC 1
shift
位→ACC lk×22
(数据存储器地址)→ACC
(15:0) 10→ACC(31:16) k→ACC(7:0) 10→ACC(31:16) (数据存储器地址)左移TREG(3:0
您可能关注的文档
最近下载
- 基层儿科医务人员服务能力提升学习班答案-2024华医网继续教育答案.docx VIP
- 中学生素质发展评价手册42p.pdf VIP
- 《反对党八股》名师教学课件 (1).pptx VIP
- 薛法根:《风娃娃》(二年级).docx
- 40篇英语短文搞定高考3500个单词(全部含翻译-重点解析).doc
- SY∕T 4113.7-2020 管道防腐层性能试验方法 第7部分:厚度测试.pdf
- 阿里全球数学竞赛姜萍成绩造假PPT课件.pptx VIP
- FM知识考试试题-必做经典大题.pdf
- 旅游管理职业生涯规划.pdf
- 江苏省南京市2025届高三零模作文“点外卖”与“送外卖”导写(真题呈现+审题立意+素材积累+写作示例+考场范文).docx VIP
文档评论(0)