寄存器可分为 CPU的寄存器分为那几类?

\u5bc4\u5b58\u5668\u53ef\u4e0b\u8be6\u5206\u4e3a\u54ea\u51e0\u79cd\uff1f\u5b83\u4eec\u5404\u81ea\u7684\u529f\u80fd\u662f\u600e\u6837\u7684\uff1f

\u5927\u98de\uff0c\u6211\u6700\u8fd1\u5728\u5b66\u53cd\u6c47\u7f16\uff0c\u770b\u5230\u4f60\u7684\u95ee\u9898\u5c31\u56de\u7b54\u4e86\uff01\u54c8\u54c8 \u5176\u5b9egoogle\u662f\u6700\u597d\u7684\u8001\u5e08\uff0c\u5c24\u5176\u5bf9\u4e8e\u8ba1\u7b97\u673a\u4e13\u4e1a\u6765\u8bf4\u3002\uff08\u4eae\u4eae\uff09 \u5bc4\u5b58\u5668\u5206\u7c7b\u3000\u3000 \u6570\u636e\u5bc4\u5b58\u5668 - \u7528\u6765\u50a8\u5b58\u6574\u6570\u6570\u5b57\uff08\u53c2\u8003\u4ee5\u4e0b\u7684\u6d6e\u70b9\u5bc4\u5b58\u5668\uff09\u3002\u5728\u67d0\u4e9b\u7b80\u5355/\u65e7\u7684 CPU\uff0c\u7279\u522b\u7684\u6570\u636e\u5bc4\u5b58\u5668\u662f\u7d2f\u52a0\u5668\uff0c\u4f5c\u4e3a\u6570\u5b66\u8ba1\u7b97\u4e4b\u7528\u3002
\u3000\u3000\u5730\u5740\u5bc4\u5b58\u5668 - \u6301\u6709\u5b58\u50a8\u5668\u5730\u5740\uff0c\u4ee5\u53ca\u7528\u6765\u8bbf\u95ee\u5b58\u50a8\u5668\u3002\u5728\u67d0\u4e9b\u7b80\u5355/\u65e7\u7684CPU\u91cc\uff0c\u7279\u522b\u7684\u5730\u5740\u5bc4\u5b58\u5668\u662f\u7d22\u5f15\u5bc4\u5b58\u5668\uff08\u53ef\u80fd\u51fa\u73b0\u4e00\u4e2a\u6216\u591a\u4e2a\uff09\u3002
\u3000\u3000\u901a\u7528\u76ee\u7684\u5bc4\u5b58\u5668 \uff08GPRs\uff09 - \u53ef\u4ee5\u4fdd\u5b58\u6570\u636e\u6216\u5730\u5740\u4e24\u8005\uff0c\u4e5f\u5c31\u662f\u8bf4\u4ed6\u4eec\u662f\u7ed3\u5408 \u6570\u636e/\u5730\u5740 \u5bc4\u5b58\u5668\u7684\u529f\u7528\u3002
\u3000\u3000\u6d6e\u70b9\u5bc4\u5b58\u5668 \uff08FPRs\uff09 - \u7528\u6765\u50a8\u5b58\u6d6e\u70b9\u6570\u5b57\u3002
\u3000\u3000\u5e38\u6570\u5bc4\u5b58\u5668 - \u7528\u6765\u6301\u6709\u53ea\u8bfb\u7684\u6570\u503c\uff08\u4f8b\u5982 0\u30011\u3001\u5706\u5468\u7387\u7b49\u7b49\uff09\u3002
\u3000\u3000\u5411\u91cf\u5bc4\u5b58\u5668 - \u7528\u6765\u50a8\u5b58\u7531\u5411\u91cf\u5904\u7406\u5668\u8fd0\u884cSIMD\uff08Single Instruction, Multiple Data\uff09\u6307\u4ee4\u6240\u5f97\u5230\u7684\u6570\u636e\u3002
\u3000\u3000\u7279\u6b8a\u76ee\u7684\u5bc4\u5b58\u5668 - \u50a8\u5b58CPU\u5185\u90e8\u7684\u6570\u636e\uff0c\u50cf\u662f\u7a0b\u5e8f\u8ba1\u6570\u5668\uff08\u6216\u79f0\u4e3a\u6307\u4ee4\u6307\u9488\uff09\uff0c\u5806\u6808\u5bc4\u5b58\u5668\uff0c\u4ee5\u53ca\u72b6\u6001\u5bc4\u5b58\u5668\uff08\u6216\u79f0\u5fae\u5904\u7406\u5668\u72b6\u6001\u5b57\u7ec4\uff09\u3002
\u3000\u3000\u6307\u4ee4\u5bc4\u5b58\u5668\uff08instruction register\uff09 - \u50a8\u5b58\u73b0\u5728\u6b63\u5728\u88ab\u8fd0\u884c\u7684\u6307\u4ee4
\u3000\u3000\u7d22\u5f15\u5bc4\u5b58\u5668\uff08index register\uff09 - \u662f\u5728\u7a0b\u5e8f\u8fd0\u884c\u5b9e\u7528\u6765\u66f4\u6539\u8fd0\u7b97\u5bf9\u8c61\u5730\u5740\u4e4b\u7528\u3002
\u3000\u3000\u5728\u67d0\u4e9b\u67b6\u6784\u4e0b\uff0c\u6a21\u5f0f\u6307\u793a\u5bc4\u5b58\u5668\uff08\u4e5f\u79f0\u4e3a\u201c\u673a\u5668\u6307\u793a\u5bc4\u5b58\u5668\u201d\uff09\u50a8\u5b58\u548c\u8bbe\u7f6e\u8ddf\u5904\u7406\u5668\u81ea\u5df1\u6709\u5173\u7684\u6570\u636e\u3002\u7531\u4e8e\u4ed6\u4eec\u7684\u610f\u56fe\u76ee\u7684\u662f\u9644\u52a0\u5230\u7279\u5b9a\u5904\u7406\u5668\u7684\u8bbe\u8ba1\uff0c\u56e0\u6b64\u4ed6\u4eec\u5e76\u4e0d\u88ab\u9884\u671f\u4f1a\u6210\u5fae\u5904\u7406\u5668\u4e16\u4ee3\u4e4b\u95f4\u4fdd\u7559\u7684\u6807\u51c6\u3002

\u5bc4\u5b58\u5668\u662fCPU\u5185\u90e8\u91cd\u8981\u7684\u6570\u636e\u5b58\u50a8\u8d44\u6e90\uff0c\u662f\u6c47\u7f16\u7a0b\u5e8f\u5458\u80fd\u76f4\u63a5\u4f7f\u7528\u7684\u786c\u4ef6\u8d44\u6e90\u4e4b\u4e00\u3002
\u7531\u4e8e\u5bc4\u5b58\u5668\u7684\u5b58\u53d6\u901f\u5ea6\u6bd4\u5185\u5b58\u5feb\uff0c\u6240\u4ee5\uff0c\u5728\u7528\u6c47\u7f16\u8bed\u8a00\u7f16\u5199\u7a0b\u5e8f\u65f6\uff0c\u8981\u5c3d\u53ef\u80fd\u5145\u5206\u5229\u7528\u5bc4\u5b58\u5668\u7684\u5b58\u50a8\u529f\u80fd\u3002
\u5bc4\u5b58\u5668\u4e00\u822c\u7528\u6765\u4fdd\u5b58\u7a0b\u5e8f\u7684\u4e2d\u95f4\u7ed3\u679c\uff0c\u4e3a\u968f\u540e\u7684\u6307\u4ee4\u5feb\u901f\u63d0\u4f9b\u64cd\u4f5c\u6570\uff0c\u4ece\u800c\u907f\u514d\u628a\u4e2d\u95f4\u7ed3\u679c\u5b58\u5165\u5185\u5b58\uff0c\u518d\u8bfb\u53d6\u5185\u5b58\u7684\u64cd\u4f5c\u3002\u5728\u9ad8\u7ea7\u8bed\u8a00(\u5982\uff1aC/C++\u8bed\u8a00)\u4e2d\uff0c\u4e5f\u6709\u5b9a\u4e49\u53d8\u91cf\u4e3a\u5bc4\u5b58\u5668\u7c7b\u578b\u7684\uff0c\u8fd9\u5c31\u662f\u63d0\u9ad8\u5bc4\u5b58\u5668\u5229\u7528\u7387\u7684\u4e00\u79cd\u53ef\u884c\u7684\u65b9\u6cd5\u3002

\u53e6\u5916\uff0c\u7531\u4e8e\u5bc4\u5b58\u5668\u7684\u4e2a\u6570\u548c\u5bb9\u91cf\u90fd\u6709\u9650\uff0c\u4e0d\u53ef\u80fd\u628a\u6240\u6709\u4e2d\u95f4\u7ed3\u679c\u90fd\u5b58\u50a8\u5728\u5bc4\u5b58\u5668\u4e2d\uff0c\u6240\u4ee5\uff0c\u8981\u5bf9\u5bc4\u5b58\u5668\u8fdb\u884c\u9002\u5f53\u7684\u8c03\u5ea6\u3002\u6839\u636e\u6307\u4ee4\u7684\u8981\u6c42\uff0c\u5982\u4f55\u5b89\u6392\u9002\u5f53\u7684\u5bc4\u5b58\u5668\uff0c\u907f\u514d\u64cd\u4f5c\u6570\u8fc7\u591a\u7684\u4f20\u9001\u64cd\u4f5c\u662f\u4e00\u9879\u7ec6\u81f4\u800c\u53c8\u5468\u5bc6\u7684\u5de5\u4f5c\u3002
\u6709\u5173\u201c\u5bc4\u5b58\u5668\u7684\u5206\u914d\u7b56\u7565\u201d\u5728\u300a\u7f16\u8bd1\u539f\u7406\u300b\u4e2d\u4f1a\u6709\u8be6\u7ec6\u7684\u4ecb\u7ecd\u3002
1\u3001 16\u4f4d\u5bc4\u5b58\u5668\u7ec4

16\u4f4dCPU\u6240\u542b\u6709\u7684\u5bc4\u5b58\u5668\u6709(\u89c1\u56fe2.1\u4e2d16\u4f4d\u5bc4\u5b58\u5668\u90e8\u5206)\uff1a

4\u4e2a\u6570\u636e\u5bc4\u5b58\u5668(AX\u3001BX\u3001CX\u548cDX)
2\u4e2a\u53d8\u5740\u548c\u6307\u9488\u5bc4\u5b58\u5668(SI\u548cDI) 2\u4e2a\u6307\u9488\u5bc4\u5b58\u5668(SP\u548cBP)
4\u4e2a\u6bb5\u5bc4\u5b58\u5668(ES\u3001CS\u3001SS\u548cDS)
1\u4e2a\u6307\u4ee4\u6307\u9488\u5bc4\u5b58\u5668(IP) 1\u4e2a\u6807\u5fd7\u5bc4\u5b58\u5668(Flags)

2\u3001 32\u4f4d\u5bc4\u5b58\u5668\u7ec4

32\u4f4dCPU\u9664\u4e86\u5305\u542b\u4e86\u5148\u524dCPU\u7684\u6240\u6709\u5bc4\u5b58\u5668\uff0c\u5e76\u628a\u901a\u7528\u5bc4\u5b58\u5668\u3001\u6307\u4ee4\u6307\u9488\u548c\u6807\u5fd7\u5bc4\u5b58\u5668\u4ece16\u4f4d\u6269\u5145\u621032\u4f4d\u4e4b\u5916\uff0c\u8fd8\u589e\u52a0\u4e862\u4e2a16\u4f4d\u7684\u6bb5\u5bc4\u5b58\u5668\uff1aFS\u548cGS\u3002

32\u4f4dCPU\u6240\u542b\u6709\u7684\u5bc4\u5b58\u5668\u6709(\u89c1\u56fe2.1\u4e2d\u7684\u5bc4\u5b58\u5668)\uff1a

4\u4e2a\u6570\u636e\u5bc4\u5b58\u5668(EAX\u3001EBX\u3001ECX\u548cEDX)
2\u4e2a\u53d8\u5740\u548c\u6307\u9488\u5bc4\u5b58\u5668(ESI\u548cEDI) 2\u4e2a\u6307\u9488\u5bc4\u5b58\u5668(ESP\u548cEBP)
6\u4e2a\u6bb5\u5bc4\u5b58\u5668(ES\u3001CS\u3001SS\u3001DS\u3001FS\u548cGS)
1\u4e2a\u6307\u4ee4\u6307\u9488\u5bc4\u5b58\u5668(EIP) 1\u4e2a\u6807\u5fd7\u5bc4\u5b58\u5668(EFlags)
\u76ee\u524d\u7684CPU\u90fd\u670964\u4f4d\u5bc4\u5b58\u5668..\u4f46\u5177\u4f53\u5185\u5bb9\u8fd8\u6ca1\u627e\u5230!

数据寄存器
数据寄存器主要用来保存操作数和运算结果等信息,从而节省读取操作数所需占用总线和访问存储器的时间。

变址寄存器
它们主要用于存放存储单元在段内的偏移量,用它们可实现多种存储器操作数的寻址方式(在第3章有详细介绍),为以不同的地址形式访问存储单元提供方便。 变址寄存器不可分割成8位寄存器。作为通用寄存器,也可存储算术逻辑运算的操作数和运算结果。

指针寄存器
主要用于存放堆栈内存储单元的偏移量,用它们可实现多种存储器操作数的寻址方式(在第3章有详细介绍),为以不同的地址形式访问存储单元提供方便。指针寄存器不可分割成8位寄存器。作为通用寄存器,也可存储算术逻辑运算的操作数和运算结果。

段寄存器
段寄存器是根据内存分段的管理模式而设置的。内存单元的物理地址由段寄存器的值和一个偏移量组合而成的,这样可用两个较少位数的值组合成一个可访问较大物理空间的内存地址。

指令指针寄存器
存放下次将要执行的指令在代码段的偏移量

  • 瀵勫瓨鍣鐨勫垎绫
    绛旓細ESP锛氭寚閽堢殑瀵勫瓨鍣锛岀敤浜庡爢鏍堟搷浣溿傝褰㈣薄鍦扮О涓烘爤椤舵寚閽堬紝鍫嗘爤鐨勯《閮ㄦ槸鍦板潃灏忕殑鍖哄煙锛屽帇鍏ュ爢鏍堢殑鏁版嵁瓒婂锛孍SP涔熷氨瓒婃潵瓒婂皬銆傚湪32浣嶅钩鍙颁笂锛孍SP姣忔鍑忓皯4瀛楄妭銆侲BP:鍩哄潃鎸囬拡锛屾寚鏍堢殑鏍堝簳鎸囬拡銆傚畠鏈缁忓父琚敤浣滈珮绾ц瑷鍑芥暟璋冪敤鐨"妗嗘灦鎸囬拡"(frame pointer). 鍦ㄧ牬瑙g殑鏃跺,缁忓父鍙互鐪嬭涓涓爣鍑嗙殑鍑芥暟...
  • 鏁版嵁瀵勫瓨鍣鍦ㄨ绠楁満涓殑鍏蜂綋鍔熻兘鍜屽垎绫绘槸浠涔?
    绛旓細鏁版嵁瀵勫瓨鍣鐨勫洓浣嶆垚鍛</鈥斺擜X銆丅X銆丆X銆丏X锛屾槸16浣嶇殑绮惧叺寮哄皢锛鍒嗕负楂樺叓浣嶅拰浣庡叓浣嶏紝鍒嗗埆鐢盇H銆丅H銆丆H銆丏H鍜孉L銆丅L銆丆L銆丏L缁勬垚銆傚畠浠鍙互鐙珛鎿嶄綔锛屼篃鍙崗鍚屼綔鎴橈紝鐏垫椿閫傚簲绋嬪簭鐨勯渶瑕併傜紪绋嬩腑鐨勭瀵嗘鍣</锛屾暟鎹瘎瀛樺櫒瀛樺偍婧愭搷浣滄暟銆佺洰鐨勬搷浣滄暟鍜岃繍绠楃粨鏋滐紝鍑忓皯浜嗗鍐呭瓨鐨勯绻佽闂紝鎻愬崌璁$畻鏈虹殑...
  • 32浣岰PU鐨瀵勫瓨鍣ㄥ垎涓鍝嚑閮ㄥ垎?
    绛旓細4. CPU鐨勫熀鏈粨鏋勫寘鎷繍绠楅昏緫閮ㄤ欢銆瀵勫瓨鍣閮ㄤ欢鍜屾帶鍒堕儴浠躲侰PU浠庡瓨鍌ㄥ櫒鎴栭珮閫熺紦瀛樹腑妫绱㈡寚浠わ紝骞跺皢鍏舵斁鍏ユ寚浠ゅ瘎瀛樺櫒涓傞殢鍚庯紝CPU瀵规寚浠よ繘琛岃В鐮侊紝灏嗗叾杞崲涓轰竴绯诲垪寰搷浣滐紝骞跺彂鍑虹浉搴旂殑鎺у埗淇″彿鏉ユ墽琛岃繖浜涘井鎿嶄綔锛屽畬鎴愭寚浠ょ殑鎵ц杩囩▼銆5. 鎸囦护鏄绠楁満鎵ц鎿嶄綔鐨勫熀鏈懡浠わ紝瀹冪敱鎿嶄綔鐮併佹搷浣滄暟鍦板潃浠ュ強琛ㄧず...
  • 娆у榫欎腑瀵勫瓨鍣鍒嗙被鏈夊摢浜?
    绛旓細涔熷氨鏄锛屼竴涓氶亾鏈4涓暟瀛椾綅锛屽彲瀛樺偍4浣嶅崄杩涘埗鏁般侽MRON PLC 灏嗘暣涓暟鎹瓨鍌ㄥ櫒鍒嗕负9涓尯锛屽垎鍒槸锛涜緭鍏ョ户鐢靛櫒鍖恒佽緭鍑虹户鐢靛櫒鍖恒佸唴閮ㄨ緟鍔╃户鐢靛櫒鍖恒佺壒娈婄户鐢靛櫒鍖恒佷繚鎸佺户鐢靛櫒鍖恒佹殏瀛樼户鐢靛櫒鍖恒佸畾鏃/璁℃暟鍣ㄥ尯銆佹暟鎹瓨鍌ㄥ尯銆佽緟鍔╁瓨鍌ㄧ户鐢靛櫒鍖恒侀摼鎺ョ户鐢靛櫒鍖恒備竴銆佽緭鍏/杈撳嚭缁х數鍣ㄥ尯杈撳叆锛氶氶亾鍙000~015...
  • 姹囩紪璇█瀵勫瓨鍣閮藉彨浠涔?
    绛旓細鍦ㄩ泦鎴愮數璺璁′腑,瀵勫瓨鍣ㄥ彲鍒嗕负鐢佃矾鍐呴儴浣跨敤鐨勫瘎瀛樺櫒鍜屽厖褰撳唴澶栭儴鎺ュ彛鐨勫瘎瀛樺櫒杩欎袱绫汇傚唴閮ㄥ瘎瀛樺櫒涓嶈兘琚閮ㄧ數璺垨杞欢璁块棶,鍙槸涓哄唴閮ㄧ數璺殑瀹炵幇瀛樺偍鍔熻兘鎴栨弧瓒崇數璺殑鏃跺簭瑕佹眰銆傝屾帴鍙e瘎瀛樺櫒鍙互鍚屾椂琚唴閮ㄧ數璺拰澶栭儴鐢佃矾鎴栬蒋浠惰闂,CPU涓殑瀵勫瓨鍣ㄥ氨鏄叾涓竴绉嶃 澶栭儴瀵勫瓨鍣ㄨ櫧鐒朵篃鐢ㄤ簬瀛樻斁鏁版嵁,浣嗘槸瀹冧繚瀛樼殑鏁版嵁鍏锋湁鐗规畩鐨...
  • 鎸夐昏緫鍔熻兘鐨勪笉鍚,瀵勫瓨鍣ㄥ彲鍒嗕负浠涔堝拰浠涔?
    绛旓細鏁扮爜瀵 绉讳綅瀵勫瓨鍣瀛樺櫒
  • 绠杩皃c瀵勫瓨鍣鐨勫熀鏈伐浣滄柟寮
    绛旓細鍦ㄤ腑澶鐞嗗櫒鐨勬帶鍒堕儴浠朵腑锛屽寘鍚殑瀵勫瓨鍣ㄦ湁鎸囦护瀵勫瓨鍣(IR)鍜岀▼搴忚鏁板櫒(PC)銆傚湪涓ぎ澶勭悊鍣ㄧ殑绠楁湳鍙婇昏緫閮ㄤ欢涓紝瀵勫瓨鍣ㄦ湁绱姞鍣(ACC)銆傚瘎瀛樺櫒锛屾槸闆嗘垚鐢佃矾涓潪甯搁噸瑕佺殑涓绉嶅瓨鍌ㄥ崟鍏冿紝閫氬父鐢辫Е鍙戝櫒缁勬垚銆傚湪闆嗘垚鐢佃矾璁捐涓紝瀵勫瓨鍣ㄥ彲鍒嗕负鐢佃矾鍐呴儴浣跨敤鐨勫瘎瀛樺櫒鍜屽厖褰撳唴澶栭儴鎺ュ彛鐨勫瘎瀛樺櫒杩欎袱绫汇傚唴閮ㄥ瘎瀛樺櫒涓嶈兘琚...
  • 娈瀵勫瓨鍣鍒嗙被
    绛旓細鍦ㄨ绠楁満鐨勫唴瀛樼鐞嗕腑锛屾湁鍑犵閲嶈鐨勬瀵勫瓨鍣鐢ㄤ簬涓嶅悓鐨勫姛鑳:棣栧厛锛屼唬鐮佹瀵勫瓨鍣–S (Code Segment)锛屽畠瀛樺偍褰撳墠鎵ц绋嬪簭鐨勪唬鐮佹墍鍦ㄧ殑娈电殑鍩哄湴鍧銆傝繖涓熀鍦板潃鎸囩ず澶勭悊鍣ㄤ粠璇ユ瀵勫瓨鍣ㄦ墍鎸囧畾鐨勫瓨鍌ㄥ尯鍩熻幏鍙栨寚浠わ紝鑰屾寚浠ょ殑鍋忕Щ鍊煎垯鐢盜P锛堟寚浠ゆ寚閽堬級鎻愪緵銆傚叾娆★紝鏁版嵁娈靛瘎瀛樺櫒DS (Data Segment)锛屽畠鐨勪綔鐢ㄦ槸鏍囪瘑...
  • CPU鐨瀵勫瓨鍣ㄥ垎涓閭e嚑绫?
    绛旓細涓ょ被 鍒嗗埆鏄 鍦板潃瀵勫瓨鍣 鍜 鏁版嵁缂撳啿瀵勫瓨鍣 褰揅PU鍜屽唴瀛樿繘琛屼俊鎭氦鎹紝鍗矯PU鍚戝唴瀛樺瓨/鍙栨暟鎹椂锛屾垨鑰匔PU浠庡唴瀛樹腑璇诲嚭鎸囦护鏃讹紝閮借浣跨敤鍦板潃瀵勫瓨鍣ㄥ拰鏁版嵁缂撳啿瀵勫瓨鍣ㄣ
  • CPU鐨瀵勫瓨鍣ㄥ垎涓閭e嚑绫?
    绛旓細瀵勫瓨鍣鏄疌PU鍐呴儴閲嶈鐨勬暟鎹瓨鍌ㄨ祫婧愶紝鏄眹缂栫▼搴忓憳鑳界洿鎺ヤ娇鐢ㄧ殑纭欢璧勬簮涔嬩竴銆傜敱浜庡瘎瀛樺櫒鐨勫瓨鍙栭熷害姣斿唴瀛樺揩锛屾墍浠ワ紝鍦ㄧ敤姹囩紪璇█缂栧啓绋嬪簭鏃讹紝瑕佸敖鍙兘鍏呭垎鍒╃敤瀵勫瓨鍣ㄧ殑瀛樺偍鍔熻兘銆傚瘎瀛樺櫒涓鑸敤鏉ヤ繚瀛樼▼搴忕殑涓棿缁撴灉锛屼负闅忓悗鐨勬寚浠ゅ揩閫熸彁渚涙搷浣滄暟锛屼粠鑰岄伩鍏嶆妸涓棿缁撴灉瀛樺叆鍐呭瓨锛屽啀璇诲彇鍐呭瓨鐨勬搷浣溿傚湪楂樼骇璇█(濡傦細C...
  • 扩展阅读:寄存器的分类 ... 数据寄存器分为哪五类 ... ax寄存器可分为哪两个 ... 工作寄存器分为几组 ... 寄存器的三种类型 ... 寄存器的类型有哪些 ... 寄存器内部结构图 ... 三菱特殊寄存器一览表 ... 寄存器分为什么和什么两种 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网