標明4個寄存器的名稱_什么叫標志寄存器?
特邀律師
寄存器的名稱代表的是對應的二進制命令如圖 是 mov ax 共同構成 66 B8 這一條二進制指令,而不是mov=66 ax=B8,這個從MOV bx, ax 就能看出。補充更多實驗所有我覺得一條指令還是得整體來看 并不能個字拆分找出對應關系,當然CPU設計的時候二進制指令的設計肯定是有規律可循的,但是這不在本題討論范圍。最后的結論就是:匯編語言中寄存器的名稱并不代表的是寄存器地址
操作系統在加載程序時,給每個段寄存器都有規定的缺省值。因此,如果你的程序承認這個缺省值是不需要在程序中對段寄存器賦值的(當然賦了也沒關系)。 一共有4個段地址寄存器,CS(code segment register)16位代碼段寄存器DS(data segment register)16位數據段寄存器SS(stack segment register)16位堆棧段寄存器ES(extra segment register )16為附加段寄存器
寄存器部件。包括通用寄存器、專用寄存器和控制寄存器。通用寄存器又可分定點數和浮點數兩類,它們用來保存指令中的寄存器操作數和操作結果。通用寄存器是中央處理器的重要組成部分,大多數指令都要訪問到通用寄存器。
32位CPU所含有的寄存器有:
4個數據寄存器(EAX、EBX、ECX和EDX)
2個變址和指針寄存器(ESI和EDI) 2個指針寄存器(ESP和EBP) 6個段寄存器(ES、CS、SS、DS、FS和GS)
1個指令指針寄存器(EIP) 1個標志寄存器(EFlags)
1、數據寄存器
數據寄存器主要用來保存操作數和運算結果等信息,從而節省讀取操作數所需占用總線和訪問存儲器的時間。
32位CPU有4個32位的通用寄存器EAX、EBX、ECX和EDX。對低16位數據的存取,不會影響高16位的數據。這些
低16位寄存器分別命名為:AX、BX、CX和DX,它和先前的CPU中的寄存器相一致。
4個16位寄存器又可分割成8個獨立的8位寄存器(AX:AH-AL、BX:BH-BL、CX:CH-CL、DX:DH-DL),每個寄
存器都有自己的名稱,可獨立存取。程序員可利用數據寄存器的這種“可分可合”的特性,靈活地處理字/字 節的信息。......