头条 AMD庆祝赛灵思成立40周年 40 年前,赛灵思(Xilinx)推出了一种革命性的设备,让工程师可以在办公桌上使用逻辑编程。 赛灵思开发的现场可编程门阵列(FPGA)使工程师能够将具有自定义逻辑的比特流下载到台式编程器中立即运行,而无需等待数周才能从晶圆厂返回芯片。如果出现错误或问题,设备可以在那里重新编程。 最新资讯 为什么按照书上的代码,编译老是出错? 老是又小伙伴在群里说我的代码是按照书上的代码敲的,就是编译不过?想不通呀!目前市面上的一些书都是十来年以前编写的了,你不幸看的还是这些书,错误原因就在这里。 发表于:9/18/2015 编译器后门与防御 Shawn the R0ck 写道 "PoC||GTFO是最近几年深受0ld sch00l黑客喜爱的电子杂志,最近的一期(第8期)里有一篇名为Deniable Backdoors Using Compiler Bugs(利用编译器Bug的可抵赖后门)的文章,作者向我们展示了一种可能的威胁,这个威胁模型是需要两个条件:1)一个可利用的编译器miscompilation bug; 2) 向目标的开源社区提交看起来不怎么像后门的patch。作者修改了Sudo 1.8.13的少量代码去利用Clang/LLVM 3.3的一个bug,最终导致提权。相比传统的编译器后门和传统软件后门(比如疑似NSA对Linux内核代码的植入),这种方式更加的隐蔽,因为它是针对特定版本的编译器下手。 发表于:9/18/2015 为什么每个程序员都应学习代码编译器知识 所有优秀的计算机科学学院都提供了编译器课程,但是相对比较少的学校把它作为本科课程的必修部分。这篇文章回答了这个问题:为什么需要学习编译器知识?即使你从没打算过编写编译器。 发表于:9/18/2015 编译器的工作过程 源码要运行,必须先转成二进制的机器码。这是编译器的任务。 比如,下面这段源码(假定文件名叫做test.c)。 发表于:9/18/2015 DSP编程技巧之:详解cmd文件 cmd文件是编译完成之后链接各个目标文件时,用来指示各个数据、符号等是如何划分到各个段,以及每个段所使用的存储空间的。许多筒子对cmd文件有畏难情绪,不容易理解各个段的含义,特别是在程序编译没有问题。 发表于:9/18/2015 DSP编程技巧之:不得不看的编译指示 编译指示(Pragma Directives)可能是所有的预处理指令中最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。 发表于:9/18/2015 DSP编程技巧之:非常“关键”的关键字 什么是“关键字”?关键字就是已被C语言本身使用,不能作其它用途使用的字,例如关键字不能用作变量名、函数名等。那“关键字”到底有多关键?简单得说,就是如果不掌握它们的使用方法,程序就不能按照我们的设计产生预期的结果。 发表于:9/18/2015 DSP编程技巧之:使用代码优化时必须考虑的五大问题 前面我们提到了使用编译器的优化选项进行不同级别的代码优化的方法。俗话说“好马配好鞍”,即使我们有了强大的代码优化工具,使得我们书写的符合ANSI/ISO C/C++的代码能被高效执行,我们在写代码时也要考虑到一些必要的原则,从而既能实现代码的优化。 发表于:9/18/2015 DSP编程技巧之:数据类型 DSP的C/C++编程时有多少种数据类型?float,double和long double,long和long long这些绕口的名字究竟有什么区别?数据类型使用不正确又会有什么后果?如果你感觉说不清楚,那我们来看看这些到底都是何方神圣吧。 发表于:9/18/2015 DSP编程技巧之链接汇编代码与C/C++代码 在DSP的开发中,常用的算法都可以用C/C++代码来高效实现。但是对一些特殊寄存器的读写,例如某些CPU寄存器的读写,因为C/C++代码无法直接对其访问,仍然需要使用汇编代码进行操作。 发表于:9/18/2015 «…182183184185186187188189190191…»