自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 关于Verilog HDL的移位运算

在Verilog HDL中有两种移位运算符。<<:(左移位运算符)>>:(右移位运算符)其使用方法如下:a >> n;a << n;a代表要进行移位的操作数,n代表要移几位。这两种移位运算都用0来填补移出的空位。下面举例说明:module shift; reg [3:0] start, result; init...

2018-11-22 17:30:22 4954

原创 《C和指针》随记

/* 前阵子花两周时间又把《C和指针》过了一遍,陆陆续续做了些笔记,现总结如下。。。*/第一章 快速上手     1. EOF是一个int型数值。     2. 去除某段代码,将其注释掉不是一个好选择,更高效、安全的办法是使用 #if    #endf#if 0 statements#endif     3. 在C语言中,数组参数是以引用形式进行传递的,也就是传...

2018-11-20 15:36:01 158

原创 char a[] = "abc" 与 char *p = "def"区别浅析

 char a[] = "abc"; 中a是数组名,编译时为其分配4个char单元,前3个单元用“abc"中的字符对应初始化,最后一个存放'\0'。  char *p = "def"; 在编译时先生成"def"字符串常量,存放在常量区,并将首地址(c的地址)赋给char *型指针变量p。 从以上可知,二者的区别在于:数组名a和指针变量p虽然本质上都是地址,但是数组名a它的地址是不变的,即它是一...

2018-11-09 10:19:57 1364

原创 《C陷阱与缺陷》读书笔记

这本书很薄,仅有150来页,正文大概120页,最后附上了课后答案及建议。上周花了三天断断续续看完,先做一个总结。第一章:词法陷阱词法分析中的贪心算法:每个符号应该包括尽可能多的字符。因此,注释的嵌套是不允许的。 符号的中间不能嵌有空白(空格符、制表符和换行符)。例如,==是单个符号,= =则是两个符号。例如, a---b ;a -- - b ;a - -- b ; 前两项含义...

2018-11-06 16:11:25 353

原创 dsp指令中的 EALLOW,EDIS

在看DSP初始化程序的时候,经常会看到void InitAdc(void){ EALLOW; SysCtrlRegs.HISPCP.all = ADC_MODCLK; InitAdc(); EDIS;}     EALLOW与EDIS究竟有什么含义呢?    在.h文件中会发现,这两条其实是汇编指令    #define  EALL...

2018-10-26 10:17:10 4712 2

原创 Quatus II13.0链接Altera-Modelsim进行功能仿真

step1:首先要设置altera-modelsim的执行路径,即指定altera-modelsim的安装路径,打开Quartusii (1)Tools ->Option (2)点击EDA Tool Options, 出现左边的界面,点击红框2 里的 “…”,选择altra-modelsim的安装路径,设置好如下图。点击 OK 退出。  step2:新建工程,本文做一个简...

2018-10-25 11:32:58 3535

原创 Quatus II 13.0版本新建Verilog工程

Part 1:新建Verilog工程step1:到file里点击new project wizardstep2:点击next到如下界面,在第一行里选择填入工程的路径,第二行填入工程名称,第三行是工程顶层文件的名称(软件默认和工程名称相同) step3:点击next,显示如下界面,这里主要是添加一些外部的设计 文件到工程里,如果没有,直接选择下一步。当然,建好工程之后,仍然可以添...

2018-10-25 11:12:35 1418

转载 Verilog HDL 初级入门知识简单讲解(wire 和 reg 类型的区别, always 和 assign 的区别,“阻塞”赋值 和 “非阻塞赋值”的区别 )

本文转载自原作者:姚纪元,原文地址已失效       很多刚学Verilog HDL (硬件描述语言)的朋友肯定会对阻塞赋值和非阻塞赋值比较疑惑,那我们就一起来抛开这层迷雾吧。首先我们要理解两种变量类型 Net Type(连线型)和 Register Type (寄存器型)。(有些参考书上有分为3种类型,这个无关紧要)。       Net Type(连线型),从名字上理解就是“导线”呗,...

2018-10-19 09:28:30 3789

原创 C语言中的volatile用法

Part 1:前缀理论知识介绍1 > 编译器的优化        由于内存访问速度远不及CPU处理速度,为提高机器整体性能,在硬件上引入硬件高速缓存Cache,加速对内存的访问。另外在现代CPU中指令的执行并不一定严格按照顺序执行,没有相关性的指令可以乱序执行,以充分利用CPU的指令流水线,提高执行速度。以上是硬件级别的优化。再看软件一级的优化:一种是在编写代码时由程序员优化,另一种...

2018-10-15 10:52:39 599

原创 记录:基于CCS6+Quartus II开发平台所遇到的一些问题(28335芯片)

    1.在CCS中首先配置好targetConfigs文件    2.编译过程中默认选择release,若想选择debug,需要在include>common.h 中,取消注释#define DEBUG_MODE ,如图:   3.  在编译之前,要确保默认.ccxml文件路径正确,具体做法是:Run>Debug Configurations,选中Code Comp...

2018-09-21 14:00:45 1030

转载 关于TI的28335芯片概述

       转载自:https://www.cnblogs.com/layup/archive/2013/04/07/3006253.htmlTMS320F28335属于TMS320C2000™数字信号控制器(DSC)系列。TI中C28x系列就是DSC,之前的产品都是定点型的DSP,而TMS320F28335所属的F2833x系列是带浮点运算单元的,用C28x+FPU表示。28335的FPU...

2018-09-21 11:44:45 8396

原创 C语言中的指针

    1. int *p        上式说明p是指向int类型对象的指针变量。     2.  为了找到变量的地址。可以使用取地址运算符&。如果x是变量,那么&x就是x在内存中的地址。         为了获取指针所指向对象的访问,可以使用间接寻址运算符*。如果p是指针,那么*p表示p当前指向的对象。     3.  只要指针p指向变量i,那么*p就是i的...

2018-09-21 11:39:42 98

原创 对同一个数组进行多次初始化

int a[]={4,9,1,8,[0]=5,7};Q:上述声明是否合法?若合法,数组长度是多少?A:这个声明是合法的。下面是它的工作原理:      编译器在处理初始化列表时,会记录下一个待初始化的数组元素位置。正常情况下,下一个元素是刚被初始化的元素后面的那个。但是,当列表中出现初始化式时,下一个元素会被强制为指示符对应的元素,即使该元素已经被初始化过。下面逐步分析编译器处理数组a

2017-11-08 17:09:38 1278

原创 关于srand((unsigned)time(NULL))

函数rand()是真正的随机数生成器,而srand()会设置供rand()使用的随机数种子。函数rand()会返回一个处于0和你所指定的数值(缺省为1)之间的分数。如果你在第一次调用rand()之前没有调用srand(),那么系统会为你自动调用srand()。而使用同种子相同的数调用srand()会导致相同的随机数序列被生成。       srand((unsigned)time(NULL

2017-11-08 16:46:13 805

原创 求最小公倍数和最大公约数

1.最小公倍数=两整数的乘积÷最大公约数2.求最大公约数算法(辗转相除法)    有两整数a和b:       ① a%b得余数c       ② 若c=0,则b即为两数的最大公约数       ③ 若c≠0,则a=b,b=c,再回去执行①/*辗转相除法求最大公约数*/#include int main(){ int m,n,temp

2017-11-03 16:47:31 309

原创 C99中的for语句

在C99中,for语句的第一个表达式可以替换为一个声明,这一特性使得程序员可以声明一个用于循环的变量: for(int i=0;i变量i不需要在该语句之前声明。事实上,如果变量i在之前已经进行了声明,这个语句将创建一个新的i且该值仅用于循环内。      for语句声明的变量不可以再循环外部访问。

2017-11-03 11:44:57 1057

原创 逻辑或“||”

1.在C语言中,逻辑或的值只能为0或者1  例如:0||-1==1(不是-1)2.而在JavaScript中,当一个布尔值0与一个布尔值1逻辑或时,值为布尔值1所代表的值  例如:0||-1==-1

2017-11-02 18:23:50 425

原创 部分C语言运算符优先级

2017-11-01 16:50:49 155

原创 关于C语言

1.在C语言中,标识符可以包含数字、字母和下划线,但开头必须是字母或者下划线。2.C语言区分大小写。

2017-10-31 19:34:27 238

原创 在VS2017创建C语言项目

Step 1.文件->新建->项目  Step 2. 选择控制台应用程序,项目名称和存储路径可由自己定义。然后点击确定->下一步  Step 3. 在弹出的对话框中,依次选择控制台应用程序和空项目,然后点击完成。 Step 4. 在生成的project中,右键点击源文件->添加->新建项,选择C++文件,重新命名文件名,并将文件后缀...

2017-10-31 14:45:20 32018 4

原创 在W3C标准定义的阻止事件向父容器传递的方法

Q:在W3C标准定义的阻止事件向父容器传递的方法A:e.stopImmediatePropagation()DOM中的事件对象:(符合W3C标准)preventDefault() 取消事件默认行为stopImmediatePropagation() 取消事件冒泡同时阻止当前节点上的事件处理程序被调用。stopPropagation

2017-08-23 23:01:49 1468 1

原创 npm更新至最新版本

命令行运行:npm install -g npnpm就自动更新到最新版本

2017-08-23 22:58:38 266

空空如也

空空如也

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

TA关注的人

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