欢迎来到天天文库
浏览记录
ID:52312371
大小:3.02 MB
页数:25页
时间:2020-04-04
《指令格式与寻址方式.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、新编电类专业计算机基础4.1指令格式与寻址方式目录指令格式小结寻址方式8051指令系统特性1共111条指令,7种寻址方式216位地址线,可访问64KB存储空间8位数据线,字节为基本指令格式3指令通常由操作码和操作数组成有单字节、双字节、三字节指令指令格式系统介绍指令前,通过一段具体程序说明指令的存储与一般表达方式。8051地址操作码和操作数0000000000000001000000100000001100000100000001010111010011110101100100001000000011111110指令格式01010101注释;(操作码)A取下一地址存储单元的内容;(操
2、作数)将要读入A的数据;(操作码)将A送入下一存储单元所指定地址;(操作数)将要送入的制定地址;(操作码)绝对无条件转移指令;(操作数)转移的地址参数存储地址存储内容注释标识全为双字节指令指令的属性,一旦改变,指令意思改变指令相关的操作数据,可根据需要改变机器码机器码枯燥难懂、不便于阅读及理解CPU制造商规定一套助记符地址操作码和操作数0000000000000001000000100000001100000100000001010111010011110101100100001000000011111110指令格式01010101助记符MOVA,#01010101BMOVP1,AS
3、JMP0004H助记符,英文缩写,易记忆与理解注释;A=01010101B;P1=A;停机命令CPU实际上无停机命令原地不停跳转实现停机效果停机作用:防止程序跑飞指令格式执行结果:8051概念由助记符组成的语言约定为汇编语言1000011101111000目录指令格式小结寻址方式寻址方式从数据传送指令开始全面介绍CPU指令集。源地址data目标地址传送data操作数所在源地址、目的地址概念寻址方式就是用于说明操作数所在地址的方法传送指令:寻址方式直接寻址寄存器寻址寄存器间接寻址立即寻址相对寻址变址寻址7种寻址方式位寻址按照源地址不同。操作数立即寻址立即数立即寻址是操作数在指令中直接给
4、出,出现在指令中的操作数是立即数。数前加“#”标识立即寻址MOVA,#55H01110100程序存储器010101010000H0001H操作码ACC01010101取出操作码01110100,同时PC自动加1PC译码得知其为双字节立即数寻址指令,下一单元中存放立即数执行,立即数送入A立即寻址:操作数=立即数SFR90H找到地址直接寻址MOV,AP1直接寻址中,操作数是直接以单元地址的形式给出,单元地址中存放的内容就是操作数。90H操作码直接地址11110101程序存储器100100000002H0003HACC0101010101010101SFR中的直接地址90H单元地址的内容为
5、操作数区分90H与#90H直接寻址:操作数存放于单元地址直接寻址—寻址范围寻址范围片内RAM的00H~7FH,以单元地址(如:30H)形式给出SFR,以单元地址或寄存器符号(如:P1)形式给出位地址空间00HFFH可位寻址RAM区工作寄存器高128BRAM区SFR1FH20H2FH30H7FH80H内部存储区直接寻址只能是8位地址,故寻址范围只限于片内片内RAMR001100000寄存器寻址寄存器寻址是在指令中将指定寄存器的内容作为操作数。用符号名称表示INCR0操作码00001000程序存储器ALU01100001低三位由寄存器名决定操作数存放于R0功能:R0=R0+1寄存器
6、寻址:操作数存放于寄存器1假设R0中存放操作数60H寄存器间接寻址以寄存器的内容为地址,然后再从所指定的地址中取操作数的方式是寄存器间接寻址。寻址方式寄存器内容举例MOVA,R0MOVA,@R0操作数操作数存放地址寄存器寻址寄存器间接寻址操作数通过寄存器间接得到寄存器间接寻址标识注意区分R0与@R0寄存器间接寻址—寻址范围片内RAM的00H~7FH,只能使用R0或R1为间接寄存器堆栈区,以堆栈指针SP作间接寻址寄存器片外RAM00H~FFH,使用R0或R1为间接寄存器0000H~FFFFH,使用DPTR为间接寄存器寻址范围00HFFH可位寻址RAM区工作寄存器高128BRAM区
7、SFR1FH20H2FH30H7FH80H内部存储区00FFH0000HFFFFH0100H外部存储区将片外RAM的0001H单元内容送入A将片外RAM地址00000001B存于R0寄存器间接寻址如何找到LED显示程序中地址00000001B中的数据55H程序存储于片外RAM区,通过使用访问片外RAM的字节传送指令—MOVX查找数据,使用如下两条指令实现。MOVR0,#00000001BMOVXA,@R001010101ACC寄存器间接寻址MOVXA,@R
此文档下载收益归作者所有