MSC-51汇编、ARM汇编与8086汇编语言编程方式的异同

在2018这个忙碌的三月份里,我匆匆忙忙地完成了两场三级考试(全国计算机三级:嵌入式系统开发技术(ARM-S3C2410);江苏三级:微机原理与 技术(8086)),基本上是从零开始看相关的参考资料,而更巧的是大三这学期的课程里有一门单片机技术与应用,其主要内容就是基于MCS-51的汇编编程与设计。所以就是集中在半个月的时间里对这“三”门汇编语言进行初探和深究,虽然这个过程比较匆忙,但我感觉收获了很多,比如对单片机及计算机等现代的电子产品底层数据的采集、构造、存储方式以及对一些生活中常用智能工具的开发与设计有一些更加清晰的认识,尤其是在编程中低层数据存储以及寄存器的功能和使用有了新的认识和理解,相信会对我后面的编程思想会有很大的帮助。以下是我总结的这“三”门汇编语言异同的认识,分享给大家,如有不对之处还请理解并予以更正,谢谢:

(1)相同点:

所有汇编的原理和编程思想都是一样的,首先要掌握处理器的体系结构,了解其工作过程,然后就可以编写汇编程序直接控制处理器处理数据以及控制外围设备;

(2)不同点:

主要是工作模式不同,指令集不同,寄存器不同,8086有实模式(16位)和保护模式(32位),ARM体系分为7种运行模式,包括用户模式和6种特权模式(快速中断模式、外部中断模式、管理模式、中止模式、未定义指令模式、系统模式),总共37个寄存器(31个通用寄存器(含PC)和6个状态寄存器),51采用哈佛体系结构(程序存储和数据存储分开),8086、ARM7以及以前的版本都属于冯·诺依曼体系结构,ARM9以后的版本都属于哈佛体系结构,运行效率更高
补充-学汇编有什么用:主要是学习思路和逻辑思考能力的锻炼。一些操作系统的启动引导程序都是用汇编编写的,包括破解之类的;总之汇编语言可以直接对硬件进行操作,不依赖任何一个操作系统;而高级语言一定在操作系统的支持相下才可以,虽然在很多地方C语言取代了汇编,但在一些关键性的地方却只能用汇编语言。

你可能感兴趣的:(MSC-51汇编、ARM汇编与8086汇编语言编程方式的异同)