周末有点时间,我把51系列单片机的指令系统参照《单片机原理与应用》(西安电子科技大学出版社出版,李建忠主编)一书的总结,全部搬到了页面上>>MCS-51系列单片机指令系统表。嗯,蛋疼之举!
51系列单片机凡110多条指令,按功能分为六个大类,为:数据传送类、转移类、算术运算类、逻辑运算类、十进制调整类及位操作类指令。
在这个页面中,我只是将指令按类做成表格,并没有对指令做相关的说明,所以在阅读这些表格的时候,需要我们对51系列单片机的寻址方式有一定的了解。
51系列单片机的寻址方式一共有 7 种:
(1)立即寻址:操作数就写在指令中,和操作码一起放在程序存贮器中。把“#”号放在数字前面,以表示该寻址方式为立即寻址,如mov A,#20H;
(2)寄存器寻址:操作数放在寄存器中,在指令中直接以寄存器的名来表示操作数地址。如MOV A,R5就属于寄存器寻址,即R5寄存器的内容送到累加器A中;
(3)直接寻址:操作数放在单片机的内部RAM某单元中,在指令中直接写出该单元的地址。如前例的ADD A,70H中的70H;
(4)寄存器间接寻址:操作数放在RAM某个单元中,该单元的地址又放在寄存器R0或R1中。 如果RAM的地址大于256Byte,则该地址存放在16位寄存器DPTR(数据指针寄存器)中,此时在寄存器名前加“ @ ”符号来表示这种间接寻址。如MOV A,@R0;
(5)变址寻址:指定的基址寄存器的内容与指令中给出的偏移量相加,所得的结果作为操作数的地址。如MOVC A,@A+DPTR;
(6)相对寻址:由程序计数器PC中的基地址与指令中提供的偏移量相加,得到的为操作数的地址。如SJMP rel;
(7)位寻址:操作数是二进制中的某一位,其位地址出现在指令中。如SETB bit;
就这样,希望能给有需要的人带来方便。
声明:本文采用 BY-NC-SA 协议进行授权 | 星期九
原创文章转载请注明:转自《MCS-51系列单片机指令系统表》
@路灯魂, 恩,工作了的人肯定不会用到这个,不过初学着,主要是我自己就要方便一点。其实所有的东西基本上都是写给自己的,有些东西记录下来方便日后查找,如果正好能给一些人也带来方便,就很不错了。自己写博客何必那么在乎谁来不来呢?当然,除非你是那种每天粘粘贴贴的写“博客”的人。每个人都是从不会到会的。
真正搞电路的谁会来这里呢。更何况,这些,太基础了,一般都会。不过,一般不会用汇编来编程了吧?c多好。
不想搞电子方面的了 虽然华工的微电子会容易考些~没情趣!
看好了通信就绝不回头~
我是不是在自杀呢?
@香瓜大棚, 嗯,坚定一点更好。
大学学的差不多都记不得了
@菜鸟, 大学学的东西大部分是以后用不到的吧,不用的话自然就忘了。
这个还是大学时候学过的东西
话说我们以前在学计算机组成原理时讲过这个寻址。
@纯野, 嗯,不过X86的寻址方式与51单片机的还有点不一样。
这个就比较的复杂了,O(∩_∩)O哈哈~
@WordPress啦, 这是入门级的哦。
是啊,涉及不到啊
这玩意不懂,当年逻辑电路完全没学的
Random Posts
Recent Posts
Recent Comments
By Plastic injection mould
By OOZJ
By Jusbe
By 互联网战
By 互联网战
By ixwebhosting
Blogroll
Categories
Tag Cloud
360 5800 Alexa C++ Chrome Cisco Dedecms Discuz Fcitx Fedora GFW Gravatar IE Linux Mobile ModelSim Music QT Quartus Shell Verilog VPN VPS Windows Wordpress XAMPP Xilinx xp 下载 垃圾评论 情感 手机 插件 星期九 注册 电子信息 程序设计 站长工具 缩略图 网络应用 考研 胡思乱想 西工大 视频 软件Meta