- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【大学课件】单片机基础知知识分享.ppt
* /sundae_meng
2. 程序 程序(Program)就是指令的有机组合,是完成特定工作所用到的指令(这些指令当然是某个特定计算机系统的指令)的总称。一段程序通常由多条指令组成,程序中所包含的指令数目及种类由程序功能决定。 用机器语言指令码编写的程序,就称为机器语言程序 ,如: 机器语言指令 含义(即对应汇编语言指令) 74 AA ;MOV A, #0AAH E4 ;CLE A 85 40 30 ;MOV 30H,40H * /sundae_meng
3. 汇编语言及汇编语言程序 将每条指令操作码所要完成的动作用特定符号表示,即用指令功能的英文缩写替代指令操作码,形成了指令操作码的助记符;并将机器语言指令中的操作数也用CPU内寄存器名、存储单元地址或I/O端口号代替,这样便形成了操作数助记符,于是就获得了“汇编语言指令”。例如,将累加器A内容清零,记为“CLR A”;用“MOV”作为数据传送指令的助记符,于是将立即数23H传送到累加器A中的指令,就可以用“MOV A,#23H”(#是立即数标志)表示;将存储器4FH单元中的内容传送到累加器A中,就用“MOV A, 4FH”表示。可见,汇编语言指令比机器语言指令容易理解和记忆。 用指令助记符(由操作码助记符和操作数助记符组成)表示的指令称为汇编语言指令,由汇编语言指令构成的程序,称为汇编语言程序(有时也称为汇编语言源程序)。可见,汇编语言程序容易理解、可读性强,方便了程序的编写和维护。 * /sundae_meng
当然,计算机只能理解和执行二进制代码形式的机器语言指令,不能理解和执行汇编语言指令。但可以通过专门软件或手工查表方式将汇编语言程序中的汇编语言指令逐条翻译成对应的机器语言指令,即可获得计算机能理解和执行的机器语言程序。将汇编语言程序转换为机器语言程序的过程就称为汇编过程,将完成汇编语言指令转换为机器语言指令的程序称为汇编程序,可见汇编程序的功能就是逐一读出汇编语言源程序中的汇编语言指令,再通过查表比较方式,将其中的汇编语言指令逐一转换成机器语言指令。当然这一过程也可以由人工查表完成,即所谓的人工汇编。 * /sundae_meng
4. 伪指令 在汇编语言源程序中,除了包含可以转化为特定计算机系统的机器语言指令所对应的汇编语言指令外,还可能包含一些伪指令,如“ORG 2000H”、“END”等。“伪”者,假也,尽管它不是计算机系统对应的指令,汇编时也不产生机器码。但汇编语言程序中的伪指令并非可有可无,伪指令的作用是:指导汇编程序对源程序的汇编。 下面是MCS-51汇编程序支持的、常见的伪指令: (1)ORG nnnn ;其中nnnn是16位二进制数,该指令的含义是随后的汇编语言指令机器码从nnnn单元开始存放。 (2)DB n1,n2,n3,…;字节定义伪指令,将随后的一串8位二进制数(字节,彼此由逗号隔开)连续存放在存储器中,用于定义字节常数表。 * /sundae_meng
? (3) DW nn1,nn2,nn3,…;字定义伪指令,将随后的一串16位二进制数(两个字节,彼此由逗号隔开)连续存放在存储器中,用于定义字常数表。 (4) DS n ;保留n个存储单元伪指令。 (5) “符号名 EQU 数或汇编符号 ”;等值定义伪指令,将某一常数或汇编符号用另一字符串代替,其中的汇编符号可以是寄存器名,存储单元地址,甚至是指令操作码助记符。 (6) “符号名 Bit bit ”;位定义伪指令,将某一位存储单元地址用字符串代替。 (7) “符号名 DATA nn ”;地址定义伪指令,将某一存储单元地址用字符串代替。例如“TIMEL DATA 30H”伪指令的含义是存储器30H单元用“TIMEL”地址变量表示。 (8) END ;汇编结束伪指令,该指令将告诉汇编程序下面没有需要汇编的指令。 * /sundae_meng
5. 汇编语言指令的一般格式 Intel系列CPU汇编语言指令格式为:? [标号:] 指令操作码助记符 [第一操作数] [,第二操作数] [,第三操作数] [;注释] 6. 指令的执行过程 指令执行过程可用如图1-5描述。 可见,一条指令的执行过程包括了:取操作码(取指令第一字节)→译码(对指令操作码进行翻译,指示控制器给出相应的控制信号)→取操作数(取出指令第二、三字节,指令第一字节,即操作码字节将告诉CPU该指令的长短)→执行指令规定的操作。然后,不断重复“取操作码→译码→取操作数→执行”的过程,执行随后的指令,直到程序结束(如遇到停机或暂停指令)。
原创力文档


文档评论(0)