预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10
亲,该文档总共59页,到这已经超出免费预览范围,如果喜欢就直接下载吧~
如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
会计学3.1概述(ɡàishù)两种基本类型:指令语句和伪指令语句(1)指令语句已在第2章介绍每一条指令语句在汇编时都产生一个指令代码——机器代码(2)伪指令语句是为汇编服务的。在汇编时没有机器代码与之对应。MCS-51的汇编语言的四分段格式如下:标号字段操作码字段操作数字段注释(zhùshì)字段规则:(1)标号字段和操作字码段之间要有冒号“:”相隔;(2)操作码字段和操作数字段间的分界符是空格;(3)双操作数之间用逗号相隔;(4)操作数字段和注释(zhùshì)字段之间的分界符用分号“;”相隔。操作码字段为必选项,其余各段为任选项。补充例1下面是一段汇编语言程序的四分段书写格式(géshi)标号字段操作码字段操作数字段注释字段START:MOVA,#00H;0→AMOVR1,#10;10→R1MOVR2,#00000011B;3→R2LOOP:ADDA,R2;(A)+(R2)→ADJNZR1,LOOP;R1内容减1不为零,则循环NOPHERE:SJMPHERE基本语法规则:1.标号字段是语句所在地址的标志符号(1)标号后边必须跟以冒号“:”(2)由1~8个ASCII字符组成(3)同一标号在一个程序中只能定义一次(4)不能使用汇编语言已经定义的符号作为标号2.操作码字段是汇编语言指令中唯一(wéiyī)不能空缺的部分。汇编程序就是根据这一字段来生成机器代码的。3.操作数字段通常有单操作数、双操作数和无操作数三种情况。如果是双操作数,则操作数之间,要以逗号隔开。(1)十六进制、二进制和十进制形式的操作数表示采用十六进制形式(xíngshì)来表示,某些特殊场合才采用二进制或十进制的表示形式(xíngshì)。十六进制,后缀“H”。二进制,后缀“B”。十进制,后缀“D”,也可省略。若十六进制的操作数以字符A~F中的某个开头时,则需在它前面加一个“0”,以便在汇编时把它和字符A~F区别开来。(2)工作寄存器和特殊功能寄存器的表示采用工作寄存器和特殊功能寄存器的代号来表示,也可用其地址来表示。例如,累加器可用A(或Acc)表示。也可用0E0H来表示,0E0H为累加器A的地址。(3)美元符号$的使用用于表示该转移指令操作码所在的地址(dìzhǐ)。例如,如下指令:JNBF0,$与如下指令是等价的:HERE:JNBF0,HERE再如:HERE:SJMPHERE可写为:SJMP$4.注释字段必须以分号“;”开头,换行书写,但必须注意也要以分号“;”开头。汇编时,注释字段不会产生机器代码。连接(liánjiē)/定位器L51目前很多公司将编辑器、汇编器、编译器、连接/定位器、符号转换程序做成集成软件包,用户进入该集成环境,编辑好程序后,只需点击相应菜单就可以完成(wánchéng)上述的各步,如WAVE、KEIL,WAVE集成软件的使用见附录。汇编的方法:汇编的方法有两种1.手工汇编:人工查指令表,查出程序中每条指令对应的机器代码。早期的计算机使用(shǐyòng)。2.机器汇编:用计算机中的汇编程序对用户源程序进行汇编。用机器汇编要提供给汇编一些信息,遵循汇编程序的一些约定。这些由伪指令指定。1)确定程序中每条汇编语言指令的指令机器码2)确定每条指令在存储器中的存放地址3)提供错误信息4)提供目标(mùbiāo)执行文件(*.OBJ/*.HEX)和列表文件(*.LST)在MCS-51汇编语言(huìbiānyǔyán)源程序中应有向汇编程序发出的指示信息,告诉它如何完成汇编工作,这是通过使用伪指令来实现的。也称为汇编程序控制命令。只有在汇编前的源程序中才有伪指令。经过汇编得到目标程序(机器代码)后,伪指令已无存在的必要,所以“伪”体现在汇编时,伪指令没有相应的机器代码产生。宏定义(dìngyì)过程:二.伪指令常用(chánɡyònɡ)伪指令及功能:2.字节定义标号:DB(字节常数,或字符或表达式)功能:指示在程序(chéngxù)存储器中以标号为起始地址的单元里存放的数为字节数据(八位二进制数)。例如LN:DB32,’C’,25H,-1;LN~LN+3地址单元依次存放20H,43H,25H,FFH5.等值指令标号EQU(数值表达式)表示(biǎoshì)EQU两边的量等值,用于为标号或标识符赋值。例如:X1EQU2000HX2EQU0FH…MAIN:MOVDPTR,#X1;DPTR=2000HADDA,#X2;A=A+0FH6.位定义标号(biāohào)BIT[位地址]作用:同EQU指令,不过定义的是位操作地址。例如AICBITP1.1。汇编语