单片机理论知识
操作系统理论知识
朽木白露
只有最不虔诚的信徒,才会追寻上帝存在的证明
展开
-
单片机外设(ram、寄存器)地址详解
外设与内设在学习汇编语言时,我们会接触到一些寄存器,比如R0、R1、还有栈指针寄存器SP、下一条指令寄存器PC 等等。这些寄存器是存在于内核(如CPU)之内的,这些寄存器是我们无法通过c语言访问到的,而只能用汇编语言操作。因此区别于可以用C语言访问的外部寄存器,这些寄存器可以称之为内部寄存器。汇编语言的强大之处便在于其不但可以访问内部寄存器,还可以读写外部寄存器。因此在单片机的引导程序建立了c...原创 2020-05-30 13:11:21 · 4683 阅读 · 0 评论 -
单片机内存(ram)、flash、与数据存储和启动过程说明
1 电脑程序运行过程与单片机的区别由于电脑中的程序是存储在磁盘中的,而磁盘的读取速度非常慢,因此我们不可能从磁盘中直接读取当前要执行的代码,这样必然导致程序阻塞。好在,电脑的内存非常大,所以在程序执行之前,先把整个代码copy到内存中,然后CPU从内存中读取一条条指令,并运行。为了合理利用和规划内存资源,除了操作系统的内存管理外,最重要的是内存的分段。对每一个进程,操作系统都会为其分配一片内存...原创 2020-05-30 13:11:45 · 2968 阅读 · 0 评论 -
单片机的启动过程
单片机的启动过程是加电后,先运行芯片内部固有程序(这个程序是用户访问不到也改写不了的),即启动代码。启动代码程序建立完运行环境后,会去读串口状态,就是用户下载程序用到的各个端口,判断用户是否正在使用端口准备下载程序,如果是,就按用户要求,把用户程序下载到指定地址上。如果不是,就跳转到已经下载过的用户程序入口,从而把芯片控制权交给用户程序。如果是新的芯片还没有下载过,那么就停留在读取串口状态的循环中...原创 2019-12-28 23:05:20 · 6480 阅读 · 2 评论 -
内存地址、位宽与容量
首先说明一下单位:1K=2^10,1M=2 ^20;1MB=1M Byte=2^20 Byte =8 * 2 ^20 bit;1Mb=1M bit=2^20 bit;存储容量=寻址范围 x 计算机处理位宽(字长)注意地址一般用十六进制表示,0x1表示2 ^1,0x3表示2 ^2,0x7表示2 ^3,0xf表示2 ^4。举例说明:1、某计算机字长32位,存储容量8MB。按字编址,其寻址...原创 2019-12-29 23:36:55 · 7174 阅读 · 0 评论 -
内存对齐
1.内存对齐的概念:计算机中基本数据类型的存放地址只能从k(通常为4或者8)的倍数而非任意整数开始。2.原因:尽管内存是以字节为单位,但处理器对于内存的读取却是以2字节,4字节,8字节,16字节甚至32字节为单位来存取内存,我们将上述这些存取单位称为内存存取粒度。假如没有内存对齐机制,数据可以任意存放,现在一个int变量存放在从地址1开始的连续四个字节地址中,该处理器去取数据时,要先从0地址开始...原创 2019-12-30 08:11:12 · 286 阅读 · 3 评论