自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 问答 (1)
  • 收藏
  • 关注

原创 bootloader作用

其实bootloader主要的必须的作用只有一个:就是把操作系统映像文件拷贝到RAM中去,然后跳转到它的入口处去执行。当然,为了实现这个功能(以及其它附加功能),我们必须对硬件做一些必要的初始化,这个也是必须的(废话!)。除了这个必须的,现在的bootloader还常常会加入以下功能:1.将操作系统映像文件写入FLASH/硬盘等:读取过来的操作系统文件,除了可以拷贝到RAM中直接运行...

2020-01-29 09:34:26 598

原创 自己出题

long a=-25;unsigned long b = (unsigned long)a;a=(long)b;printf("%d",a);的输出结果?答: -25long a=-25;unsigned short b = (unsigned short)a;a=(long)b;printf("%d",a);的打印输出结果?输出结果: 655...

2020-01-29 09:33:12 214

原创 面试问题

陶瓷电容与钽电容区别Dcdc ldo区别阻抗匹配单片机开发感想代码量底层板框图。任务调度是怎样进行的。他们做多核架构的平台,自己裁剪linux。...

2020-01-29 09:32:27 146

原创 vs code 插件|中文|跳转|折叠

1、无脑安装一直下一步。2、最左侧extension是装插件的地方——搜索框分别搜索——c/c++,c++ Intellisense,Guides ,ARM进行安装。前两个在拖入一个c文件时会自动提示安装。3、跳转:ctrl+左击————到definition。ctrl+Alt+左击————新窗口打开定义。Alt+← ————返回上一处,Alt+→是到下一处。...

2020-01-29 09:31:01 2415

原创 优化

1 改完a1段要看后面的a2段有没有使用a1中改动的寄存器2 根据左移的正负数对循环进行分情况拆分3 可以用连续的ldr代替循环中

2020-01-29 09:30:01 123

原创 C语言的符号重载

static 在函数内部:表示该变量的值在各个调用间一直保持延续性。在函数外部:表示本函数只对本文件可见。extern用于函数定义:表示全局可见(属于冗余的)。用于变量:表示它在其他地方定义。void用于函数返回值:表示不返回任何值。用于函数指针:表示通用指针类型。位于参数列表:表示没有参数。*乘法运算符;用于指针;声明中表示...

2020-01-29 09:28:16 149

原创 汇编前变址、后变址、回写

前变址: ldr r0,[r1,#4] ;[r1+4] →r0前变址回写:ldr r0,[r1,#4]! ;r1+4→r1,[r1]→r0后变址回写:ldr r0,[r1],#4 ;[r1]→r0,r1+4→r1...

2020-01-29 09:27:30 1004

原创 vld1 vld2

Vld1.s32 {q0,q1},[r0]Q0: 0x00000004000000030000000200000001Q1: 0x00000008000000070000000600000005vld2.s32 {q0,q1},[r0]Q0: 0x00000007000000050000000300000001Q1: 0x00000008000000060000000...

2020-01-29 09:26:28 446

原创 long long要用%lld打印

long long要用%lld打印%lld 中间是两个L。

2020-01-29 09:25:47 866

原创 notepad++ 双击高亮|多格式标记

1、双击高亮颜色设置:设置——语言格式设置——Global style——样式——Smart Hightlighting2、打开双击高亮功能:设置——首选项——高亮——勾选“启用智能高亮”3、使用不同格式标记多个对象3.1 使用格式1——5进行标记 : ctrl+1→5(default)3.2 清除格式:搜索——清除颜色标记——分别选择清除格式1-5修...

2020-01-29 09:24:32 2441

原创 notepad++ 热键|双向查找|书签|TAB转空格|单行注释隐藏行

1、默认快捷键:(1)双击选中对象后ctrl+F进行查找,勾选查找框最右边的小方框进入“双按钮查找模式”。Enter键——下一个 Shift+Enter——上一个。(2)书签设置书签:最右边行号后面单击,再次单击取消书签。定位到书签:F2——下一书签, Shift+F2——上一书签。(3)TAB与空格互转编辑——空白字符管理——TAB转空格,紧...

2020-01-28 18:23:26 1104

原创 notepad++ 复制文件 同步滚动 显示符号 总在最前 行号

1、移动/复制文件到另一视图/新视图右击标签页——移动到另一视图/复制到另一视图/在新视图中打开2、垂直/水平同步滚动视图——垂直同步滚动 / 水平同步滚动。3、显示所有符号/显示空格与制表符视图——显示符号——显示空格与制表符 / 显示所有字符 / 显示缩进参考线 / 显示换行符。4、总在最前视图——总在最前5、行号显示:设置——首选项——编辑——勾选“显示行号栏...

2020-01-28 18:22:29 1460

原创 仅有B没有BL时lr不会变|字节对齐

字对齐,即4字节对齐首地址的bit[1:0]总是00,首地址都是4的倍数。半字对齐,即2字节对齐,首地址的bit[0]总是0,首地址总是2的倍数。字节对齐就是1字节对齐。...

2020-01-28 18:21:29 125

原创 SI高亮|字体|Tab|行号|关键字|背景颜色|自动换行

1、高亮:选中一个变量后,同名的其他变量也高亮默认:Shift+F8更改:options——key Assignments——View: Highlight Word ——Assign New Key ——设置为"Alt+左击"。2、字体:Options——Document Options——Screen Fonts——通常选"Courier New"字体。3、Tab缩进宽度:...

2020-01-28 18:19:52 948

原创 SI 关键字 汇编解析 个性化设置 快捷键

1、export/import keyword list :辛辛苦苦手动加入了很多关键字,可以export进行保存,保存时可以无后缀。import——选中——"Merge..."2、Style Properties更改"注释颜色"、“全局变量颜色”等颜色、字体、加粗、倾斜、前景色背景色等显示问题。配置方法:选中要修改的文本——右击——Style Properties——左边...

2020-01-28 18:19:00 360

原创 notepad++ 列编辑

1、列编辑:按住Alt+鼠标左键拖动,可实现列选择与“框选择”,然后“编辑”——列块编辑——可批量插入文本。2、右击文件标签——复制/移动到另一视图。...

2020-01-28 18:17:14 392

原创 优化 :NEON右移变左移

按照立即数移位,左右移都可以,且都有饱和操作。按照变量移位,只有左移可用。在ARM汇编转NEON时,按变量右移会切换为左移。即c = a-b, d>>c 要写成 c = b-a, d<<c 。; C语言:a=SE_L_shr(tmp1, SE_sub(Q_tmp,1));;q0=tmp1 q1=Q_tmpvmov.s32 q14,#1vsub.s32 ...

2020-01-28 18:15:40 344

原创 优化 :多项表达式分解

原C语言:Q=SE_sub(SE_shl(SE_add(Q_ne,tmp),1),31);翻译一下就是Q=(Q_ne+tmp)<<1-31其中Q_ne是常亮变量,tmp是变量,在一次循环中,Q_ne只参与了循环中这一次运算,所以将多项式分解一下为Q=(Q_ne<<1-31) + (tmp<<1 - 31)这样求出Q_ne后,继续求出Q_ne<<1-31,保留这个值即可,...

2020-01-28 18:13:56 243

原创 typedef 枚举 结构体

typedef enum _EVS_ERROR //可以不写枚举名称{ ERROR00, ERROR01, ERROR02, ERROR07 = 0x07, ERROR08} EVS_ERROR;结构体(结构体指针)变量类型:typedef struct _GAIN_THRESHOLD ...

2020-01-28 18:11:50 211

原创 经验

1 写程序时用table键(一般事先设置为1table=4空格),写完程序一般把table替换为空格,因为在别的编辑器看程序时如果table不是4空格,则看起来会很乱。2 在一种情况下,即使是结构良好的程序,使用goto也非常合适——就是跳出多层循环嵌套的循环。3 常见的寄存器功能置位复位value |= 1 << bit_numbervalue &...

2020-01-28 18:10:14 113

原创 C语言移位符>>与ASR算术右移等价

做个实验,看看C语言的右移到底是(1)LSR逻辑右移,不复制符号位(2)ASR算术右移,保留并复制符号位。S32 a=0x81234567; /-2128394905S32 result1=(a>>16); //S16 result2=(a>>16);S16 rrsult3=a/65536; //65536就是2的16次方结果result...

2020-01-25 13:15:41 742

原创 c语言移位代替乘除法要注意符号位

使用移位很容易把符号位变换了,而乘法不会。比如a=0b1011 1110,就是-66。如果用左移一位代替乘2,结果左移后a=0b0111 1100=124,负数变正数了,符号位被移走了。而实际上a*2=-132。所以用移位代替乘法时一定要注意符号位...

2020-01-25 13:14:02 781

原创 c函数实参与r0-r3寄存器

c函数的前四个实参会依次放入r0~r3寄存器中,第五个参数开始后面参数都会压入堆栈

2020-01-25 13:13:17 593

原创 c语言带饱和求绝对值函数

S32 L_negate(S32 var1){ s32 varout; varout=(var1==MIN32)?MAX32:-var1; return varout;}宏定义MIN32是0x80000000,MAX32是0x7fffffff

2020-01-25 13:11:50 462

原创 新学的C语言字符串赋值

#define DIR "D:\\test\\"char filePath1[100]={DIR"hello.txt"};char filePath2[100]={DIR};char filePath3[100]={"D:\\""test\\""hello.txt"};filePath1,filePath3,都是"D:\test\hello.txt"filePat...

2020-01-25 13:09:48 138

原创 feof 与 fread 联合使用要注意

二者判断文件文件结尾有所不同fread是成段成段的读取,即便文件指针还没到末尾,但如果读取的段到了文件末尾,就返回0,而文件指针经过这次读取后才到达文件末尾。feof是文件指针真正到达文件末尾后才返回-1,所以同样已函数返回结果作为循环判断结束依据的话,feof会比fread多一次循环...

2020-01-25 13:08:45 1351

原创 ldr r0,array与ldr r0,=array

array是个数组,每个元素的值都是100。S32 array[30];array[0]=100;如果用 ldr r0,array 则r0的值是100。如果用 ldr r0,=array 则r0的值是array[0]的地址

2020-01-25 13:07:40 684

原创 stm/ldm存储数据与读取数据实验

stm--store memoryldm--load memory在stm之前r0=0x1960--&tmp[5]r1=0x12345678r5=0x87654321stm r0!,{r5,r1}r0=0x1968--&tmp[7]tmp[5]=0x12345678--r1tmp[6]=0x87654321--r5可见stm存储如预期成功。ldm r0!,{...

2020-01-25 13:06:14 676

原创 if 0 #define xxx

#define xxx不用写数值,可以当做开关来控制一段程序是否被编译#if 0#endif用来代替注释掉暂时不用的代码

2020-01-25 13:04:13 413

原创 计算机补码

计算机用补码记录负数,-7的记录是1111 1001(8位有符号字节),而不是1000 0111。-7=1000 0111原1111 1000反1111 1001补正数的补码就是其本身,负数的补码是除符号位取反再加1。在计算机中,有符号字节8bit 如下正数0000 0000-00000 0001-10000 0010-20000 001...

2020-01-25 12:59:45 1040

原创 博客凋零 转战CSDN

一直觉得自己写的博客都太low,难登大雅之堂,之前一直都是在百度空间和网易博客写文章,但是现在博客越来越凋零,百度空间关闭了,网易博客也N久不更新,连个安卓的客户端都是2013年更新的,前途堪忧,所以我决定转移阵地,以CSDN和博客园作为技术博客的主阵地,网易博客用来候补。我自己是靠着网上大神的博客一点一点成长起来的,所以也希望自己能为技术博客事业恭喜啊一份力。但愿CSDN和博客园能长久啊!!

2015-09-12 12:00:57 245

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除