- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课件10 指令格式与寻址方式
位寻址是指对片内RAM的位寻址区(20H~2FH)、可以位寻址的专用寄存器的各位,并进行位操作的寻址方式。 位地址的表示方法 位名称 例:CY、RS0 寄存器名加序号 例:ACC.1、P0.1 字节地址加序号 例:20H.3 直接位地址 例:00H、 07H 寻址范围:①片内RAM中的位寻址区 ②可位寻址的SFR的位 例如: MOV C,00H;把20H单元中D0位的值送C位 MOV P1.0,C;把C位中的值送P1口的D0位 SETB 20H. 0 ;把00H位置1 以PC当前值为基准,加上相对偏移量rel形成转移地址 转移范围:以PC当前值起始地址,相对偏移在-128~+127 字节单元之间。相对寻址方式为相对转移指令所采用。 转移的目的地址为: 目的地址=转移指令所在地址+转移指令字节数+rel 例如:JC 75H (设Cy=1) 若rel为负数,计算时用补码运算 寻址方式 相关寄存器 寻址的空间 立即寻址 ? 程序存储器ROM 直接寻址 ? 片内RAM和SFR 寄存器寻址 R0~R7,A,B,DPTR R0~R7,A,B,DPTR 寄存器间接 寻址 @R0,@R1 片内RAM @R0,@R1,@DPTR 片外RAM 变址寻址 @A+PC,@A+DPTR ROM区 相对寻址 PC ROM区 位寻址 可位寻址的SFR 片内RAM20H~2FH,SFR可寻址位 DS6 EQU P1.2 DS5 EQU P1.3 ;DS6,DS5 VIN EQU P2.6 POUT EQU P2.7 LED EQU P2.4 ;有健按下时灯均亮 K2 EQU P2.0 K1 EQU P2.1 F1_K1 BIT 01H ;F1_k1状态,指示灯每1秒闪烁一次,设置方波次数,如果K2连续按下,则递减,单次K2 ;按下,则按一次加1 F2_K1 BIT 02H ;F2_K1状态,指示灯每500毫秒秒闪烁一次,设置输出脉宽时间,如果K2连续按下,则递减,单次K2 ;按下,则按一次加1 F0_K1 BIT 03H ;回到零功能状态 POUT_ZH BIT 04H T_HS BIT 07H ;毫秒 DATA_DS9 EQU 30H ;次数H DATA_DS8 EQU 31H ;次数L ORG 0000H LJMP MAIN ORG 0003H RETI ORG 000BH LJMP INT_T0 ORG 0013H RETI ORG 001BH LJMP INT_T1 ORG 0023H RETI ;----------------------------- ORG 0300H MAIN: MOV R0,#7FH CLEAR_RAM: MOV @R0,#00H DJNZ R0,CLEAR_RAM 指令格式与寻址方式 指令:主机能直接识别和接受并指挥计算机执行某种操作的命令。 指令系统:指令的集合。 指令可以用两种语言形式表示: 机器语言:用二进制代码表示,能被主机直接识 别,但不易记忆和阅读。 汇编语言:可以反映指令的功能和主要特征,用助 记符,可以方便记忆。 MCS-51汇编指令由操作码助记符字段和操作数字段所组成。 标号:操作码助记符 [(目的操作数),(源操作数)];注释 例如: SS: MOV A,#4FH ;立即数4FH送A 标号:用符号标明该指令所在的符号地址,根据实际需要设置。在其他指令的操作数中可以引用该标号作为符号地址,便于控制程序的转向或寻址。标号以英文字母开头的字母、数字和某些规定的特殊符号的序列,一般不超过6个符号,否则,超过部分在源程序汇编时将被删去。 操作码助记符 用来规定指令所完成的操作,用规定的汇编语言助记符表示。 操作数:表示操作的对象,可能是一个具体的数据,也可能是指出取得数据的地址或符号。分为目的操作数和源操作数两部分,中间用“,”分开。操作数可以有1、2、3个或者没有(如空操作指令) 。 注释:对该指令功能的解释,可有可无。 举例 LOOP: MOV A, #50H ;(A)←50H DEC R0 ;(R0)←(R0)-1 DJNZ R0, LOOP ;(R0)-1≠0,则程序转移到LOOP地址;否则顺序执行 END ;结束 MCS-51汇编语言有111种指令,42种操作码助记符用来描述33种操作功能。 指令的存放
文档评论(0)