CPU指令集架构基础学习

本文介绍了CPU指令集架构的基础知识,包括x86、ARM、MIPS和PowerPC等架构。重点对比了CISC(复杂指令集)与RISC(精简指令集)的特点,阐述了指令码、汇编语言和CPU寄存器的概念,并探讨了不同指令集在实际应用中的选择和演进。
摘要由CSDN通过智能技术生成

在最初接触C/C++的时候,我对程序编译后的指令非常着迷,循序渐进的学习了C/C++语言编译器生成汇编语言的模式。

就像是语言翻译一样,我们需要做到直接阅读x86等汇编代码,并且能够将其还原成原始的C/C++语句,这是学习逆向最有效的方法。

CPU是执行程序机器码的硬件单元,相关概念包括以下几项:

**指令码:**是CPU处理的底层命令,典型的底层命令有:将数据在寄存器之间转移,操作内存,计算数值等指令,每一类CPU都有自己的指令集架构,CPU品牌有Intel,AMD,IBM和Cyrix,IDT,VIA威盛,国产龙芯等。

**汇编语言:**为了让程序员少掉头发而创造出来的,是人类可以易于读写。

**CPU寄存器:**每一种CPU都有其固定的通用寄存器(GPR),x86的CPU中有8个GPR,x64里面有16个GPR,ARM中有16个GPR,CPU寄存器就是一种存储单元,他可以无差别存储所有类型的临时变量,如果写一个程序只用到了8个32位变量,CPU自带的寄存器就可以完成任务。

需要一种将高级编程语言转成CPU可以处理的底层机器语言,这种程序就是编译器(Compiler)。

0x01 指令集架构

x86的指令集架构中,opcode(汇编指令对应的机器码)长度是不同的。
ARM属于RISC(精

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值