摘要:
当我们在我们的代码中申明变量时,我们通常是不用考虑也不会去做所谓的内存对齐的,因为这个工作本身是属于编译器去完成的。那我们的变量为什么不按照大小顺序地存放而是非要做所谓内存对齐?这个问题其实也是属于一个冲突问题,主要原因是内存的粒度是字节,即每一个BYTE都有唯一的地址,而cpu访存是按机器字(比如
阅读全文
posted @ 2022-11-15 20:27
L棋
阅读(116)
推荐(0)
编辑
摘要:
今天看了一篇博客确实写的很好,是讲指针的,比较详细也比较通俗易懂。https://blog.csdn.net/k666499436/article/details/123906941 这个图片留存一下,把各种指针拆分的特别细致,这里主要强调的就是[]的优先级高于*,低于 ()。 int arr[5]
阅读全文
posted @ 2022-11-15 17:28
L棋
阅读(26)
推荐(0)
编辑
摘要:
内联函数的引入 内联函数简单来说就是空间换时间,它会把函数的执行块内容替换(搬)到发在函数的调用位置执行,但是不发生函数调用,从而我们的代码量会增加,但是会没有函数调用所需要的开销。我们常说一般方式方法的引入都是为解决问题而来的,比如首先为什么我们需要函数?函数的引入其实简单来说,就是将一些通用的东
阅读全文
posted @ 2022-11-14 17:34
L棋
阅读(49)
推荐(0)
编辑
摘要:
前言 最近研究在linux 内核下,主机通过SPI与另外一个板卡通信,该板卡将收到的信息加密后又通过SPI给到主机。其实就是将另外一个板卡看作一个外置的SPI设备,更贴切来说就甚至可以看作一个spi flash, in out 模型,给数据,吐数据而已。关于SPI的基本的硬件知识,我想这是最基本的,
阅读全文
posted @ 2022-11-10 20:59
L棋
阅读(856)
推荐(0)
编辑
摘要:
物理内存(物理地址) 这个是我们大家最能理解的,就是实实在在存在的内存空间。我们对内存的访问现在一般通过内存控制器。我们这里先要能够区别这里的内存空间并不是如外挂储存设备的nand/nor_flash这样设备中的存储空间,而是我们cpu直接能够按地址访问的空间。每一个字节有唯一的内存地址。物理上的地
阅读全文
posted @ 2022-11-10 20:51
L棋
阅读(491)
推荐(2)
编辑
摘要:
前言 最近研究在linux 内核下,主机通过SPI与另外一个板卡通信,该板卡将收到的信息加密后又通过SPI给到主机。其实就是将另外一个板卡看作一个外置的SPI设备,更贴切来说就甚至可以看作一个spi flash, in out 模型,给数据,吐数据而已。关于SPI的基本的硬件知识,我想这是最基本的,
阅读全文
posted @ 2022-11-03 16:16
L棋
阅读(727)
推荐(0)
编辑
摘要:
在这里,我想任何人做编程相关的人都应该至少接触过某种编程语言,接触过程序的编译,执行过自己源代码产生的可执行文件。对于可执行文件我想不得不提需要关心的应该直接首先是两个: 1.可执行文件的产生 2.可执行文件的运行 可执行文件的产生: 可执行文件是什么? 目标机器可执行的一段指令流和所用到的数据流。
阅读全文
posted @ 2022-09-28 09:34
L棋
阅读(484)
推荐(4)
编辑