摘要:
傅里叶为什么选择了正弦波,而不选择方波或其他波形? 正弦波有其他波形所不具备的特点:正弦波输入至任何线性系统,出来的还是正弦波,改变的仅仅是幅值和相位,即正弦波输入至线性系统,不会产生新的频率成分(非线性系统如变频器,就会产生新的频率成分,成为谐波)。 线性系统是自动控制研究的主要对象,线性系统具备 阅读全文
posted @ 2020-02-04 11:26
wuqi1003
阅读(641)
评论(0)
推荐(0)
摘要:
法国数学家傅里叶发现,任何周期函数都可以用正弦函数和余弦函数构成的无穷级数来表示(选择正弦函数与余弦函数作为基函数是因为它们是正交的),后世称傅里叶级数为一种特殊的三角级数,根据欧拉公式,三角函数又能化成指数形式,也称傅立叶级数为一种指数级数。 正交性 所谓的两个不同向量正交是指它们的内积为0,这也 阅读全文
posted @ 2020-02-04 11:25
wuqi1003
阅读(1592)
评论(0)
推荐(0)
摘要:
将具有不连续点的周期函数(如矩形脉冲)进行傅立叶级数展开后,选取有限项进行合成。当选取的项数越多,在所合成的波形中出现的峰起越靠近原信号的不连续点。当选取的项数很大时,该峰起值趋于一个常数,大约等于总跳变值的9%。这种现象称为吉布斯效应。 吉布斯效应:当选用的傅里叶级数的项数增多时,更接近于原周期函 阅读全文
posted @ 2020-02-04 11:24
wuqi1003
阅读(1786)
评论(0)
推荐(0)
摘要:
★ >>> a=5 >>> b=3 >>> a+b 8 >>> a='5' >>> b='3' >>> a+b '53' ★三重引号定义多行字符串 long_string = """Sing a song of sixpence, a pocket full of rye,Four and twen 阅读全文
posted @ 2020-02-04 11:23
wuqi1003
阅读(141)
评论(0)
推荐(0)
摘要:
16bit数(比如short型):0x ****,用4个数表示。 8bit数(比如char型):0x**,用2个数表示。 所以一个数可以表示4bit。 而ARM中地址加1,表示增加一个Byte,增加一个32位的long,就是4个Byte,地址要加4。 char *a; a++ ; a就是加1 lon 阅读全文
posted @ 2020-02-04 11:22
wuqi1003
阅读(219)
评论(0)
推荐(0)
摘要:
1 改完a1段要看后面的a2段有没有使用a1中改动的寄存器 2 根据左移的正负数对循环进行分情况拆分 3 可以用连续的 ldr r1,[r0] ldr r2,[r0,#4] ldr r3,[r0,#8] … add r0,r0,#12 代替循环中的 ldr r1,[r0],#4 要确定好循环次数是能 阅读全文
posted @ 2020-02-04 11:20
wuqi1003
阅读(196)
评论(0)
推荐(0)
摘要:
int a[5]={1,2,3,4,5};int *ptr = (int*)(&a+1);问: *(a+1)是多少? *(ptr-1)是多少答:对一个类型为T的指针来说,比如 T* pp++或者p+1 等价于 p+sizeof(T) 而不是简单的加1。对一个数组来说,&a与&a[0]虽然数值相同,但 阅读全文
posted @ 2020-02-04 11:19
wuqi1003
阅读(580)
评论(0)
推荐(0)
摘要:
一维数组a[2]={1,2}:有2行,每行1个元素。二维数组a[2][3]={0,1,2,3,4,5}:有2行,每行3个元素。a+1其实是以“行”为跳变单位的,所以对于a[2],a+1就是“数组基址+sizeof(int)”,1 2 未知a,&a[0] a+1,&a[0]+1 &a+1对于a[2][ 阅读全文
posted @ 2020-02-04 11:17
wuqi1003
阅读(341)
评论(0)
推荐(0)
摘要:
int a[2][3]={1,2,3,4,5,6}问:(1)a[1][1]=?(2)*(a[1]+1)=?(3)**(a+1)=?(4)(*(a+1)[1])=?答:计算机是“行优先”,a[2][3]就是0 1 2a[0] 1 2 3a[1] 4 5 6(1)∴ a[1][1]=5(2)可以将数组a 阅读全文
posted @ 2020-02-04 11:16
wuqi1003
阅读(244)
评论(0)
推荐(0)
摘要:
S16 a[]={1,2,3,4,5}sizeof(a)=?答:10。sizeof是关键字不是函数sizeof(int)——√sizeof(i)——√sizeof i——√sizeof int——错 阅读全文
posted @ 2020-02-04 11:15
wuqi1003
阅读(173)
评论(0)
推荐(0)
摘要:
推算程序输出:int main(){char a[1000];int i;for(i=0;i<1000;i++){a[i]=-1-i;}printf("%d",strlen(a));return 0;}strlen是遇到0出结果,循环1000次,char是-128~127,肯定会溢出,进而有0产生, 阅读全文
posted @ 2020-02-04 11:14
wuqi1003
阅读(434)
评论(0)
推荐(0)
摘要:
switch(变量){case 值1:语句;break;case 值2:语句;break;... ...default: break;}case后只能是整型或者字符型的常量或常量表达式。const修饰的变量不能放在case后面,因它仅仅是"只读变量",并不是常量。const定义的“只读变量”不会被编 阅读全文
posted @ 2020-02-04 11:01
wuqi1003
阅读(1128)
评论(0)
推荐(1)
摘要:
int judge_endian(){union un{int i;char c;} un1;un1.i = 1;return (un1.c==1); 返回1是小端,0大端。}以存储0x12345678举例小端 大端高地址 12 78 高地址34 5656 34低地址 78 12 低地址 阅读全文
posted @ 2020-02-04 10:59
wuqi1003
阅读(143)
评论(0)
推荐(0)
摘要:
enum color{green=1,red, //2green_red=10,green_blue //11} colorVal;sizeof(enum)=?sizeof(color)=?sizeof(colorVal)=?枚举本质就是int,上面几个都是sizeof(int)=4. 阅读全文
posted @ 2020-02-04 10:58
wuqi1003
阅读(233)
评论(0)
推荐(0)
摘要:
int i=0,j=0;if( (++i>0) || (++j>0) )printf(“i=%d j=%d”,i,j);问输出结果解析:∵++i>0成立,程序已经得到TRUE,++j会被忽略,没机会执行∴最终输出i=1,j=0。 阅读全文
posted @ 2020-02-04 10:57
wuqi1003
阅读(127)
评论(0)
推荐(0)
摘要:
1,常规tmp=a; a=b; b=tmp;2,进阶a=a+b; b=a-b; a=a-b;注意ab若过大,a+b可能造成越界。3,按位异或a ^= b; b ^= a; a^=b; 阅读全文
posted @ 2020-02-04 10:56
wuqi1003
阅读(107)
评论(0)
推荐(0)
摘要:
(1) 0x01 << 2+3结果是32,因为+比移位符号优先级高。(2)#define FILE_PATH E:\\wu\\a.txt注意要用双斜杠转义字符\\(3)#define x 3#define y x+2#undef x 1#define z x-1int m=y,n=z;问m,n的值解 阅读全文
posted @ 2020-02-04 10:55
wuqi1003
阅读(181)
评论(0)
推荐(0)
摘要:
1、int *ap[] : 即int* ap[],ap是个数组,里面元素都是int *型的。2、int *fp() : 函数fp的返回是为int*型。3、val & mask != 0 等价于 val &(mask!=0),4、c=getchar()!=EOF 等价 c=(getchar()!=EO 阅读全文
posted @ 2020-02-04 10:54
wuqi1003
阅读(113)
评论(0)
推荐(0)
摘要:
#:①#define SQR(x) printf("x is %d",x);②#define SQR(x) printf("#x is %d",x);在程序中使用SQR(8)会得到不同结果:①x is 8②8 is 8井号#后接define的参数,#x,可以将x变为形参。##:#define XNA 阅读全文
posted @ 2020-02-04 10:53
wuqi1003
阅读(167)
评论(0)
推荐(0)
摘要:
char *p="abc"; //p在栈区,abc在静态区,abc不可被更改,被写入会报错,p与abc是相互独立的,其关系可以被打破。char a[]="123"; //数组名a实际就是123这段存储区域的别名,不可变,所以a不能做左值。char (*p)[3] = &a; //正确赋值char ( 阅读全文
posted @ 2020-02-04 10:52
wuqi1003
阅读(314)
评论(0)
推荐(0)
摘要:
int a[4]={1,2,3,4};int *p1=(int*)(&a+1);int *p2=(int*)((int)a+1);printf("%x,%x",p1[-1],*p2);解析:(1)数组索引可以是负数,p1[-1]=*(p1-1),1 2 3 4 未知a p-1 &a+1注意&a+1与 阅读全文
posted @ 2020-02-04 10:51
wuqi1003
阅读(156)
评论(0)
推荐(0)
摘要:
struct Test{int num;char *pc;short data;char c[2];short sa[4]} *p;假设p的值为0x10000,问p+0x1=?(unsigned long)p+0x1=?(unsigned int*)p+0x1=?解析:p+1=sizeof(stru 阅读全文
posted @ 2020-02-04 10:50
wuqi1003
阅读(152)
评论(0)
推荐(0)
摘要:
先推断一个程序的结果:int a[3][2]={(0,1),(2,3),(4,5)};int *p=a[0];printf("%d",p[0]);问打印结果?解析:花括号{}内是小括号(),应该先计算括号表达式的值。括号表达式计算顺序是从左到右,最终以最右边表达式的值作为整个表达式终值。所以(0,1 阅读全文
posted @ 2020-02-04 10:49
wuqi1003
阅读(177)
评论(0)
推荐(0)
摘要:
int a[5][4]; int (*p)[4],(*q)[4]; p=a;//pq不是4的话,a就不能赋给p,//5可以是任意值不用理会。 阅读全文
posted @ 2020-02-04 10:48
wuqi1003
阅读(165)
评论(0)
推荐(0)
摘要:
程序一:struct student{char *name;int score;} stu,*pstu;int main(){strcpy(stu.name,"Jimy");stu.score = 99;return 0;}问程序有何错误?答:错误在于struct中只是定义了指针name,并未分配空 阅读全文
posted @ 2020-02-04 10:37
wuqi1003
阅读(126)
评论(0)
推荐(0)
浙公网安备 33010602011771号