解析CPU中的寄存器.docx
《解析CPU中的寄存器.docx》由会员分享,可在线阅读,更多相关《解析CPU中的寄存器.docx(15页珍藏版)》请在第一文库网上搜索。
1、解析CPU中的寄存器寄存器存储CPU中的数据32位通用寄存器32位16位8位EAXAXA1ECXCXC1EDXDXD1EBXBXB1ESPSPAHEBPBPCHESISIDHEDIDIBH8位寄存器在16位寄存器中,而16位寄存器在32位寄存器中。简单来说32位寄存器就是一整个16位寄存器就是32的一半15-0这部分8位寄存器分高位和低位,分别代表1587-0,如下图做个实验就明白了将32位寄存器全部写满数据对16位寄存器调试可以看到更改的数据是后面四个对8位高低寄存器调试,可以看到ah是在eax寄存器的后34位改变的,a1是后两位改变的Od添加两个指令f8执行,eax的值变成了1又把eax的
2、值给了edx内存写立即数到内存movbyteptrds:内存窗口的已申请的16进制,Ibyteworddword字节大小InoVbyteptrds:0019FB90,20写寄存器到内存movbyteptrds:0019FB90,eax读内存到寄存器moveax,byteptrds:0019FB90内存地址的五种表示方式形式1立即数0019FB90形式2reg代表任意寄存器形式3rcg+立即数形式4reg+reg*1,2,4,8形式5reg+reg*1,2,4,8+立即数数据的存储模式大段模式:数据高位在低位,数据地位在高位小段模式:数据低位在低位,数据高位在高位db内存地址查看一个字节dw内存
3、地址查看两个字节dd内存地址查看四个字节大小端的使用场景1、Ini止的80X86系列芯片使用小端存储模式2、ARM芯片默认采用小端,但可以切换为大端3、M1PS芯片采用大端,但可以在大小端之间切换4、在网络上传输的数据普遍采用的都是大端0x1122334411是高位44是低位在内存地址中9093内存地址,所以是小段模式0019FF90440019FF91330019FF92220019FF9311mov移动数据moveax,1将1存储到eax中moveax,edx将edx的值存储到eaxadd数据相加addeax,1eax加1结果给eax也数据相减subeax,1eax减1结果给eaxand作
4、用按位与运算按位与作用:只将某一位变成0,而其他位保持不变使用:谁要变0,谁就和0与and就是与运算,两个数按二进制位相与,全1为1,有。为0,常用于把低位清零or按位或运算或位用用按作使oreax.edx:只将某一位变成1,而其他位保持不变:谁要变1谁就和1或xor异或运算一样为O不一样为1xoreax,ecxnot异或运算一样为1不一样为0noteax,ecxmovs移动数据,内存内存movsbyteptres:EDI,byteptrds:ES1Jmovswordptres:EDI,wordptrds:ESImovsdwordptres:EDI,dwordptrds:ESI简写movsbm
5、ovSwmoVSdEF1标志寄存器DF的值由第十位决定为O时,则EDIESI+1+2+4为1时,则EDIESI-1-2-4stos指令将a1/ax/eax的值存储到edi指定的内存单元Stosbyteprtes:EDIstoswordprtes:EDIstosdwordprtes:EDIj写Stosbstoswstosdrep指令,按计数寄存器ECX中指定的次数重复执行字符串指令moVecx,IOrepmovsdrepstosd堆栈ESP栈指针寄存器push指令向堆栈压入数据,修改斩顶指针ESP寄存器相当于movsub-4push3pusheaxpushdwordprtds:18FF4pop指
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 解析 CPU 中的 寄存器