ZKX's LAB

RISC技术有什么特点 编译器优化 数据流 控制流

2020-10-12知识6

编译器和反编译器哪个厉害,哪个更难于编写? 方舟编译器前段时间比较火,国外编译器也是非常多,但是反编译器似乎比较少,据说两者使用的技术差不多,…

如何使用AST生成程序的控制流图

在不考虑编译器优化等因素下,下面那个运算比较快? 下面是在编译器不优化的情况下的代码反汇编后的结果14:if(a>;b)/我们看到,只有3条指令,0040104D mov edx,dword ptr[ebp-4]/将a放入寄存器EDX00401050 cmp edx,dword ptr[ebp-8]/比较EDX和b的大小00401053 jle main+3Ch(0040105c)/如果a跳转到0040105c15:{16:return 1;00401055 mov eax,10040105A jmp main+4Fh(0040106f)17:}18:if(a-b>;0)/我们看到有4条指令0040105C mov eax,dword ptr[ebp-4]/将a放入EAX0040105F sub eax,dword ptr[ebp-8]/a-b的差放入EAX00401062 test eax,eax/比较EAX是否为000401064 jle main+4Dh(0040106d)/条件跳转19:{20:return 2;00401066 mov eax,20040106B jmp main+4Fh(0040106f)21:}所以我认为if(a>;b){.}效率更高

什么是计算机中的子字并行技术? 一种改进数据流图的子字并行程序表示方法论文致力于对图像处理算法的串行C程序进行子字并行分析,并重定向到带有多媒体扩展的通用处理器和多媒体专用嵌入式微处理器.图像处理算法的特点决定其是内在可并行的,这种并行粒度介于数据并行(DLP)和指令级并行(ILP)之间,称之为子字并行.但是,当前的编译技术很难充分挖掘和定位程序基本块内的子字并行,对此设计了一种基于流图程序表示的编译方法,能够从串行程序中显式地定位子字并行.扩展了编译器的功能,增加了特定的模式库,基于模式识别的控制流和数据流分析后,产生特定的子字并行流图(SWFG,Sub-Word Flow Graph),并将该图作为中间表示,提供给子字并行指令选择,进而实现有效的子字并行代码产生.关键词:图像处理;子字并行;子字并行流图

#指令周期#计算机指令#汇编指令#risc

随机阅读

qrcode
访问手机版