一、概述对于一套CPU指令集来说,有着对应着这套指令集的架构。例如ARM指令集一定对应着ARM的体系结构,x86的指令集一定对应着x86的体系结构。
但是指令集并非是固定的。以ARM32为例,所有的ARM32都一定支持最基础的整数指令集。在整数指令集之外还有其他的扩展指令集,而这些扩展指令集往往需要对应的硬件支持。
                        
                    
                    
                 
            
        
            
                
                
                
                
                    
                    
                        
                            
                            12345678910111213141516171819202122232425262728293031323334func(int, int):        push    {r7}        sub     sp, sp, #20        add     r7, sp, #0        str     r0, [r7, #4]        str ...
                        
                    
                    
                 
            
        
            
                
                
                
                
                    
                    
                        
                            
                            一、概述对于一套CPU指令集来说,有着对应着这套指令集的架构。例如ARM指令集一定对应着ARM的体系结构,x86的指令集一定对应着x86的体系结构。
但是指令集并非是固定的。以ARM32为例,所有的ARM32都一定支持最基础的整数指令集。在整数指令集之外还有其他的扩展指令集,而这些扩展指令集往往需要对应的硬件支持。
FPU浮点运算单元是一个非常常见的扩展硬件,对应着FPU的扩展指令集。FPU...
                        
                    
                    
                 
            
        
            
                
                
                
                
                    
                    
                        
                            
                            DD截取一个二进制文件的数据。
使用:
1dd if=inputfilename of=outputfilename bs=1 count=20000
bs是输入输出的块大小,count是块的数量。可以使用skip=N跳过输入文件的前N个块位置,seek=N跳过输出文件的前N个块位置。
Hexdump查看一个二进制文件里面的数据。
                        
                    
                    
                 
            
        
            
                
                
                
                
                    
                    
                        
                            
                            Cmake基础Cmakelists.txt是cmake构建系统的配置文件,可以自动生成构建系统,并且进行编译测试。
使用Cmake命令进行构建系统的生成,cmake -B build指定build目录为构建目录,就能够根据目录中的Cmakelists.txt在build中生成makefile。
可以通过-S dir指定包含Cmakelists.txt的根目录。
可以通过-D <var...