- 博客(9)
- 资源 (1)
- 收藏
- 关注
原创 CPU存储方式—Big Endian、Little Endian
嵌入式系统开发者应该对Little-endian和Big-endian模式非常了解,采用Little-endian模式的CPU对操作数的存放方式是低字节到高字节,而Big-endian模式CPU对操作数的存放方式是从高字节到低字节。一、为什么会有Little-Endian和Big-Endian之分? 这是因为在计算机系统中,我们是以字节为单位的,每个地址单元都对应着一个字节,一个字节为8
2016-05-09 13:57:11
2121
原创 Haar特征、积分图、Adaboost算法、分类器训练
一、Haar-like特征Haar特征值反映了图像分度变化的情况。Haar-like特征最早是由Papageorgiou等应用于人脸表示,Viola和Jones在此基础上,使用3种类型4种形式的特征。Haar特征分为三类:边缘特征、线性特征、中心特征和对角线特征,组合成特征模板。特征模板内有白色和黑色两种矩形,并定义该模板的特征值为白色矩形像素和减去黑色矩形像素和。Haar特征值反映了
2016-05-06 15:24:26
6262
原创 volatile修饰符
一、关键字volatile含义这个问题是区分c程序员和嵌入式系统程序员的最基本问题,搞嵌入式经常同硬件、中断、RTOS等打交道,所有这些都要求用到volatile变量。volatile含义就是:一个定义为volatile的变量是说这个变量可能会被意想不到的改变,这样,编译器就不会去假设这个变量的值了。精确的说就是,编译后的程序每次需要存储或读取这个变量的时候,都会直接从变量地址中读取数据。如果
2016-05-04 08:19:40
312
原创 关键字static的作用
一、在c语言中,static有下3个作用1、函数体内的static变量的作用范围为该函数体,不同于auto变量,该变量的内存只被分配一次,以为其值在下次调用时仍维持上次的值(该变量存放在静态变量区)。2、在模块内static全局变量可以被模块内所有函数访问,但不能被模块外其他函数访问。(注意,只有在定义了变量后才能使用。如果变量定义在使用之后,要用extern 声明。所以,一般全部变量都会
2016-05-03 11:02:57
1043
转载 c中类型转换与c++中类型转
类型转换有c风格的,当然还有c++风格的。c风格的转换的格式很简单(TYPE)EXPRESSION,但是c风格的类型转换有不少的缺点,有的时候用c风格的转换是不合适的,因为它可以在任意类型之间转换,比如你可以把一个指向const对象的指针转换成指向非const对象的指针,把一个指向基类对象的指针转换成指向一个派生类对象的指针,这两种转换之间的差别是巨大的,但是传统的c语言风格的类型转换没有区分这些
2016-05-03 10:53:35
647
转载 如何在C++程序中调用c程序
C++和C是两种完全不同的编译链接处理方式,如果直接在C++里面调用C函数,会找不到函数体,报链接错误。要解决这个问题,就要在 C++文件里面显示声明一下哪些函数是C写的,要用C的方式来处理。1、引用头文件前需要加上 extern “C”,如果引用多个,那么就如下所示extern “C”{#include “ s.h”#include “t.h”#include “g.h”
2016-05-03 08:47:35
460
转载 结构体位制
一、位域的形式 有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可。为了节省存储空间,并使处理简便,C语言又提供了一种数据结构,称为“位域”或“位段”。所谓“位域”是把一个字节中的二进位划分为几 个不同的区域, 并说明每个区域的位数。每个域有一个域名,允许在程序中按域名进行操作。 这
2016-05-02 11:29:18
501
Haar特征、积分图、Adaboost算法、分类器训练
2016-05-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人