汇编语言介绍

本文介绍了汇编语言的基本概念,强调了其在时效性和内存效率上的优势,尤其是在工业控制和大型程序核心模块中的应用。文章详细探讨了ARM指令集,包括数据处理指令、寻址方式、加载和存储指令,以及汇编文件的编写格式。通过示例代码,读者可以了解如何使用汇编语言实现单个LED灯闪烁。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、概述

汇编更接近机器语言,能够直接对硬件进行操作(例如堆栈的初始化),生成的程序与其他的 语言相比具有更高的运行速度,占用更小的内存,因此在一些对于时效性要求很高的程序、许多大型 程序的核心模块以及工业控制方面大量应用。但是汇编也有很明显的缺点,移植性很差,不同芯片的 汇编指令格式各不一样。

感受一下C语言与汇编语言之间的关系

二、ARM的指令集

约定:

寄存器就当做是芯片提供给我们的全局32位变量r0~r15,但是能够给我们使用的话r0~r12,r13 用于存储堆栈指针,r14用于存储子程序的返回地址,r15用于记录当前程序的执行位置。

1. 数据处理指令

数据传输指令 =

算术逻辑运算指令

算术 + - ×

逻辑 & | ^ ~

比较 > < == 

2. 数据处理指令的寻址方式

.立即数寻址 mov r0,#0x10

.寄存器寻址 mov r0,r1

.寄存器偏移寻址 mov r1,r2,lsl #2

3. 加载ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hqb_newfarmer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值