- 博客(12)
- 资源 (2)
- 收藏
- 关注
原创 汇编和C执行效率效率能差多少倍?
前段时间因项目需求,写了个C语言的功能块,但因在该功能块中不能使用栈,所以需要用汇编语言实现,同样用汇编实现该功能块后,测试算法运行一次时间发现:C语言647us汇编117us两种语言尽然差如此之多,预计C语言该功能块代码能继续优化,估计汇编的执行效率也要快两三倍以上。...
2022-03-02 14:25:26
1792
原创 Ubuntu 编译时出现错误cc1: error: ‘-fcf-protection’ is not compatible with this target
Ubuntu gcc编译出错
2022-02-12 14:08:01
2775
原创 可视化状态机直接生成代码
状态机在设计某些功能的时候使用广泛,目前网上状态机自动生成工具有几种,分别如下所示:FsmCrater:FsmCrater案例:[有限状态机代码生成器 FsmCrater]SMC(The State Machine Compiler) :SMC官网:http://smc.sourceforge.net/案例:状态机生成工具——SMCQfsm:qfsm官网:http://qfsm.sourceforge.net/本文介绍:使用Qfsm结合SMC直接从状态机生成代码:1、分别从qfsm和
2022-01-04 12:59:07
3424
原创 ARM汇编指令基础运算指令03
ARM汇编指令基础运算指令031、clz统计0bit数量指令2、cmn比较指令2、cmp比较指令1、clz统计0bit数量指令clz统计寄存器中的为0的个数,从高位(31bit)向低位(0bit)统计mov r0,#0x80 //0b0000 0000 0000 0000 0000 0000 1000 0000 //----> ----> ----> ----> ---->clz r0,r0 // r0 = 242、cmn
2021-08-03 17:35:08
1561
原创 ARM汇编指令基础运算指令02
ARM汇编指令基础运算指令021、BFI插入指令运算规则2、ASR右移运算指令3、AND位与运算指令4、BIC清除位运算指令1、BFI插入指令运算规则bfi指令时指定插入位置和插入长度,将一个寄存器的值插入到另一个寄存器 movw r0, #0x1234 movt r0, #0x1234 //r0 = 0x12341234 movw r1, #0x5678 movt r1, #0xabcd //r1 = 0xabcd5678 bfi r0,r1,#16,#8 //在
2021-08-02 16:49:26
1359
原创 ARM汇编指令基础运算指令(加法)01
ARM汇编指令基础运算指令(加法)011、加法指令add运算规则2、加法扩展指令adds、adc运算规则3、加法条件扩展指令addcc、addeq、addlt、addls、addgt等等1、加法指令add运算规则add加法运算不影响cpsr条件标记位add r0,r1 //r0 = r0 + r1add r0,#0x01 //r0 = r0 + 0x01add r0 ,r1,r2 //r0 = r1 + r2add r0,r1,#0x01 //r0 = r1 + 0x01 2、加法扩展
2021-07-30 17:00:47
4818
原创 C语言中float(浮点数)与二进制的转换关系
1、float 浮点数在IEEE-754标准中float定义格式为:|------|------------|---------------------------------------||符号| --阶码—|------------尾数---------------------|符号表示正负:0为正,1为负;阶码表示基的指数,因为是二进制,因此基是2,表示为2^n,阶数需要转换时需要±127尾数表示小数点后面的数,需要由二进制转换成小数点后的数在实际的物理存储中又分为如下长度:
2021-06-03 17:49:08
6206
原创 STM32f107 CAN滤波器设置
STM32f107 CAN滤波器设置F107有CAN1、CAN2两路,其滤波设置类似stm32f10x系列CAN滤波器:两种模式:列表模式、屏蔽位模式有分组**,*CAN1:0->13组,CAN2:14->28组; 滤波器组时间是***同或***关系以下只讨论屏蔽位模式、扩展帧滤波器u32 ID1=0x10203008;//此ID与实际传输ID存在右移3位的关系,即实际传输ID为0x02040601u32 ID2=0x50607008;///////////////
2020-07-01 11:41:21
1020
原创 STM32F1 FSMC 初步理解1
以前使用51的时候可以定义外部接口地址,方便已寻址的方式访问外部器件,在STM32中,FSMC功能类似,方便搭载多种外部芯片,如使用FSMC模拟8080并口,interl模式并口等。FSMC工作模式较多,以复用模式为例来说明:复用模式可以很方便模拟8080并口,以及驱动Intel模式并口器件,配置好引脚后,需要根据驱动芯片手册确定读写时序,如果时序太大或太小,都会导致读写数据不正确。以下是100pin STM32F103MCU FSMC初始化程序: FSMC_NORSRAMInitTy
2020-05-14 16:24:08
944
原创 Allegro画不规则形状PCB
将轮廓画好后,选择轮廓的class和subclass分别为board geometry与design_outline,如图所示:
2019-08-08 09:53:19
1679
原创 ARM DS-5.26 入门教程
!!!这个软件真不好用!!!!入门的必要条件:1、材料:arm开发版,运行的是Linux系统2、ARM DS-5安装成功进入正题:直接上图,需要解释的会加文字第一步:这里一定要选择红色箭头指的这两部分,不然那后面编译的程序无法再板子上运行。第二步:这里无需更改下图所示的任何内容#######################################分割线#######...
2019-05-08 17:53:44
1853
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人