- 博客(23)
- 收藏
- 关注
原创 ARM汇编格式
数字本地标签是标签的子类,以0-99范围内的数字开头。在ARM汇编语言中,指令、伪指令、伪操作、伪操作的助记符和寄存器名称必须全部大写或全部小写。这时在一行的末尾用“\”表示下一行将续在本行之后,注意,在“\”之后不能再有其他字符,空格和制表符也不行。在一行语句中,指令的前面必须要有空格或者符号(symbol)。指令,伪指令和伪操作之前必须有空格,例如space或tab,而不管前面是否有标签。一行的长度限制为4095个字符,包括使用反斜杠“\”扩展到下一行中的内容。一行语句中的三个部分都是可选的。
2023-06-15 19:23:00
287
原创 ARM汇编语言伪操作
符号定义(Sybol Definition)伪操作用于定义ARM汇编程序中的变量、对变量赋值及定义寄存器的别名等操作。用于定义全局变量的GBLA、GBLL和GBLS。用于定义局部变量的LCLA、LCLL和LCLS。用于对变量复制的SETA、SETL、SETS。为通用寄存器列表定义名称的RLIST。GBLA(GBLL或GBLS) 全局变量名GBLA、GBLL和GBLS伪操作用于定义一个ARM程序中的全局变量并将其初始化。GBLA伪操作用于定义一个全局的数字变量,并初始化为0。
2023-06-14 22:17:18
362
原创 ARM基本寻址方式
寻址方式是指根据指令中给出的地址码字段来形成操作数有效地址的方法,ARM处理器是RISC架构的处理器,它的一个重要特点就是寻址方式比CISC架构的处理器(如x86)要简单。ARM处理器支持的基本寻址方式通常有9种,下面分别讨论。
2023-06-12 12:51:13
1333
原创 STM32的复位与复位流程
在系统调试或处理器复位操作过程中,Cortex-M3或Cortex-M4处理器中的调试部件不会复位,这样可以保持调试主机(如运行在计算机上的调试器软件)和微控制器间的连接。MSP的设置是非常必要的,这是因为在复位的很短时间内由产生NMI或HardFault的可能,在一场处理前将处理器状态压栈时需要栈存储和MSP。上电复位和系统复位的持续时间取决于实际的微控制器设计。注意:上面讲的复位类型只是一个宽泛的概念,在具体的微控制器平台上的实现和名称都不相同,具体仍需参考对应微控制器的参考手册。
2023-05-29 02:35:43
4168
原创 OpenCv中的图像
先创建一个为30x28像素的、RGB值为BC7DFF的验证图像,即R=188,G=125,B=255,在OpenCv中读取。在左侧和下侧分别画一道一像素宽的RGB值为0x326496(50、100、150)的短线。
2023-03-15 04:19:06
64
原创 SPI通信协议
SPI 协议是由摩托罗拉公司提出的通讯协议 ,即串行外围设备接口(Serial Peripheral Interface),是一种高速全双工的通信总线。它被广泛地使用在 ADC、LCD 等设备与 MCU 间,要求通讯速率较高的场合。
2022-07-22 03:24:58
1195
原创 C语言中的整数
判断-1<0U,有U修饰,计算机按照无符号整数形式比较,而-1在计算机中以补码形式保存,在32位系统表现为32位1,比0大,所以此表达式结果为0 第二个标红同理 2147483647>(int)2147483648U无符号整数被强制类型转换为有符号整数,计算机按照有符号类型进行比较,因为无符号整数没有符号位,所以2147483648在计算机存储的最高位是0,以有符号方式读取出来是负数(-2147483648),因此表达式结果为1 所以比较运算等操作数的类型最好保持一致,以免...
2022-05-07 05:23:41
2291
1
原创 计算机中的数值表示
原码移码移码通常用来表示指数(阶码),这样便于浮点数加减运算时的对阶操作(比较大小)补码一个负数的补码等于模减去该负数的绝对值 对于一个确定的模,某数减去小于模的另一数,总可以用该数加上另一负数的补码来代替。在4位十进制模运算系统中9828-1928可以转换为9828加-1928的补码,各位取反,末尾加1,即8072,加上后取模即可。一个负数的补码等于其绝对值补码各位取反,最低位加1 对于正数来说,它的补码是它本身加上模后取模,结果是它本身X是真值...
2022-05-07 05:15:21
1029
4
原创 主要学习内容
后PC时代后PC时代,计算资源多种多样,如手持式计算机(手机、平板等),背后实际上是通过很多数据中心把所有个人的计算机连成了一个网络。后PC时代的几个特征:计算资源多样化,I/O设备无处不在,数据中心、PMD与PC共存 软硬件协同设计,硬件OS(Operating System)和编译器之间的关联更加密切 对应用程序员的要求更高,必需了解计算机底层结构;必需掌握并行程序设计技术和工具;应用问题更复杂,领域更广主要内容主要研究计算机各个不同抽象层的实现及其相互转换的机制,通过讲解
2022-04-21 18:32:09
1752
1
原创 现代计算机系统的层次结构
回顾:计算机系统抽象层的转换用户使用的程序或是希望计算机解决的问题首先需要转换成算法 在操作系统的支持下将高级语言编写的源程序翻译成机器语言 操作系统实际上相当于是对计算机底层(硬件)功能进行抽象的层次,提供一个虚拟的机器给上层的用户使用 以上都是计算机系统的软件层,最终拆解开来都是一条条指令集体系结构(ISA)规定的指令 这些指令实际上是对底层硬件的一种抽象,指令集的具体结构的实现就是微体系结构 微体系结构由基本的功能部件实现,层层往下 因此程序的执行结果不进取决于算法、程序编写,..
2022-04-21 02:46:24
2090
原创 程序的开发和执行及其支撑环境
解释程序(Interpreter):将高级语言逐条翻译成机器指令并立即执行,不生成目标文件 编译程序(Complier):将高级语言源程序转换为机器级目标程序,执行是只要启动目标程序即可程序执行的所有的过程都是在CPU执行指令所产生的控制信号的作用下进行的,这是硬件层面 语言处理程序+语言的运行时系统(如printf等标准库函数)=语言处理系统 printf等基本函数最终会调用一些操作系统内核提供的服务;(操作系统提供的)人机接口和操作系统内核也是程序运行的必要条件,所以操作系统是必...
2022-04-20 07:30:46
1627
原创 现代计算机结构模型及工作原理
CPU:中央处理器 PC:程序计数器 MAR:存储器地址寄存器 ALU:算术逻辑部件 IR:指令寄存器 MDR:存储器数据寄存器 GPRs:通用寄存器组(由若干个寄存器组 成,早期就是累加器) 算数逻辑部件(ALU)可以对存储器或寄存器(GPRs)里面的操作数进行运算,运算的结果可以放回某个寄存器或通过总线输出到存储器。 寄存器里的数据可以通过MDR送到存储器,存储器来的......
2022-04-20 07:21:19
1572
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人