- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章 系统可置单片机的指令系统 7.28
系统可配置单片机的指令系统
3.1概述
微处理器能执行的所有指令的集合称为指令系统。所谓机器语言就是指令的二进制编码表示,而汇编语言则是指令的符号表示。微处理器只能识别二进制数,因此只有用二进制表示的机器语言,微处理器能直接执行,用机器语言编写的程序称手编程序。使用汇编语言编写的程序称汇编程序。
指令系统是由生产厂商定义的,不同厂商针对不同的微处理器所定义的专用指令系统不同,也一样,因此汇编语言编写的程序没有通用性,无法直接移植。由于采用M8C内核,不同于Intel ×86处理器,因此要掌握和应用,用户必须学习它的指令系统,区别它与Intel×86以及其它处理器指令系统的不同。
M8C指令集中共包含36条指令,按其功能划分为6类分别是算术运算类指令、逻辑运算类指令、移位类指令、数据传送类指令、转移控制类指令以及类指令功能计算两个操作数的和,并将结果替代第一个操作数。如果它们的和大于255,那么标志寄存器CF位置1;如果它们的和等于,那么标志寄存器中的ZF位将置1。指令ADD SP,expr(表达式在任何情况下均不影响标志寄存器。相关指令格式如表
表3.1 ADD指令
助记符 变 量 操作 操作码 周期 字节 ADD A,expr A←A+K 0x01 4 2 ADD A,[expr] A←A+RAM[k] 0x02 6 2 ADD A ,[X+expr] A←A+RAM[X+k] 0x03 7 2 ADD [expr], A RAM[k]←RAM[k]+A 0x04 7 2 ADD [X+expr], A RAM[X+k]←RAM[X+k]+A 0x05 8 2 ADD [expr], expr RAM[k1]←RAM[k1]+k2 0x06 9 3 ADD [X+expr], expr RAM[X + k1]← RAM[X + k1]+k2 0x07 10 3 ADD SP,expr SP←SP+k 0x38 5 2 例1: mov A, 0x0A ;初始化累加器A =
add A, 0xF0 ;结果A=
add A, 0x06 ;结果A=0, CF=1, ZF=1
例 2: mov A, 0x0A ;初始化累加器A=
add A, 0xF0 ;结果A=add A, 0x07 ;结果A=1, CF=1, ZF=0
add A, 5 ;结果 A=6, CF=0, ZF=0
例3: mov A, 0x0A ;初始化累加器A =
swap A, SP ; SP= 0x0A
add SP, 0xF0 ;结果SP=
add SP, 0x06 ;结果SP=0, CF, ZF不变
2. 不带进位减法指令SUB
功能: 第一个操作数减去第二个操作数,结果代替第一个操作数中的值。如果结果为0,那么ZF位将置1,否则清零;如果结果小于0,CF位将被置1。相关指令格式如表SUB指令
助记符 变 量 操作 操作码 周期 字节 SUB A,expr A←A-K 0x11 4 2 SUB A,[expr] A←A-RAM[k] 0x12 6 2 SUB A ,[X+expr] A←A-RAM[X+k] 0x13 7 2 SUB [expr], A RAM[k]←RAM[k]-A 0x14 7 2 SUB [X+expr], A RAM[X+k]←RAM[X+k]-A 0x15 8 2 SUB [expr], expr RAM[k1]←RAM[k1]-k2 0x16 9 3 SUB [X+expr], expr RAM[X + k1]← RAM[X + k1]-k2 0x17 10 3 例: mov A, 0 ;累加器A清零
or F, 0x04 ;设置CF
sub A, ;A= 0xF4
例: mov [0x39], 2 ;初始化ram[0x39]=0x02
mov [0x40],FF ;初始化ram[0x40]=0xff
inc [0x40] ;ram[0x40]=0x00, CF=1
sub [0x39], 0 ;ram[0x39]=0x02
3. 带进位加指令ADC
功能:计算两个操作数的和,同时加上标志寄存器中的进位,然后将结果放在其中一个操作数中。如果和的结果超过255,那么进位标志置1;如果和的结果为,那么标志寄存器F中的零置1。相关指令格式如表
表3.3 ADC指令
助记符 变 量 操作 操作码 周期 字节 ADC A,expr A←A+k+CF 0x09 4 2 ADC A,[expr] A←A+RAM[k]+CF 0x0A 6 2
您可能关注的文档
最近下载
- PLC应用技术(西门子S7-1200)全套教学课件.pptx VIP
- 宿州市市直机关遴选公务员考试真题2024.docx VIP
- GBT 35694-2017 光伏发电站安全规程.pdf
- DB41T 2312-2022 波形钢腹板预应力混凝土组合箱梁桥施工规范.pdf VIP
- 征信简版电子版PDF个人信用报告最新版2024年可编辑带水印模板.pdf VIP
- 胃肠道肿瘤的基因检测与个体化治疗.pptx VIP
- 部编版语文四年级上册第二单元综合素质测评B卷(含答案).pdf VIP
- 《道路深层病害探地雷达无损检测技术规范》DB41 T2525-2023.doc VIP
- 中国儿童幽门螺杆菌感染诊治专家共识(2022) .pdf
- 2021届广东省华师附属高级中学(广州总校)三下学期5月综合测试(三模)文科综合地理试卷无答案.pdf VIP
文档评论(0)