CPU包括哪些寄存器?分别有什么功能? CPU包含哪些部件?各部分有什么主要功能?
\u7b80\u8ff0CPU\u5185\u6709\u54ea\u4e9b\u4e3b\u8981\u5bc4\u5b58\u5668\u53ca\u4f5c\u75281\u3001\u6570\u636e\u5bc4\u5b58\u5668
\u6570\u636e\u5bc4\u5b58\u5668\u4e3b\u8981\u7528\u6765\u4fdd\u5b58\u64cd\u4f5c\u6570\u548c\u8fd0\u7b97\u7ed3\u679c\u7b49\u4fe1\u606f\uff0c\u4ece\u800c\u8282\u7701\u8bfb\u53d6\u64cd\u4f5c\u6570\u6240\u9700\u5360\u7528\u603b\u7ebf\u548c\u8bbf\u95ee\u5b58\u50a8\u5668\u7684\u65f6\u95f4\u3002
2\u3001\u53d8\u5740\u5bc4\u5b58\u5668
32\u4f4dCPU\u67092\u4e2a32\u4f4d\u901a\u7528\u5bc4\u5b58\u5668ESI\u548cEDI\u3002\u5176\u4f4e16\u4f4d\u5bf9\u5e94\u5148\u524dCPU\u4e2d\u7684SI\u548cDI\uff0c\u5bf9\u4f4e16\u4f4d\u6570\u636e\u7684\u5b58\u53d6\uff0c\u4e0d\u5f71\u54cd\u9ad816\u4f4d\u7684\u6570\u636e\u3002
\u5bc4\u5b58\u5668ESI\u3001EDI\u3001SI\u548cDI\u79f0\u4e3a\u53d8\u5740\u5bc4\u5b58\u5668(Index Register)\uff0c\u5b83\u4eec\u4e3b\u8981\u7528\u4e8e\u5b58\u653e\u5b58\u50a8\u5355\u5143\u5728\u6bb5\u5185\u7684\u504f\u79fb\u91cf\uff0c\u7528\u5b83\u4eec\u53ef\u5b9e\u73b0\u591a\u79cd\u5b58\u50a8\u5668\u64cd\u4f5c\u6570\u7684\u5bfb\u5740\u65b9\u5f0f\uff0c\u4e3a\u4ee5\u4e0d\u540c\u7684\u5730\u5740\u5f62\u5f0f\u8bbf\u95ee\u5b58\u50a8\u5355\u5143\u63d0\u4f9b\u65b9\u4fbf\u3002\u53d8\u5740\u5bc4\u5b58\u5668\u4e0d\u53ef\u5206\u5272\u62108\u4f4d\u5bc4\u5b58\u5668\u3002\u4f5c\u4e3a\u901a\u7528\u5bc4\u5b58\u5668\uff0c\u4e5f\u53ef\u5b58\u50a8\u7b97\u672f\u903b\u8f91\u8fd0\u7b97\u7684\u64cd\u4f5c\u6570\u548c\u8fd0\u7b97\u7ed3\u679c\u3002\u5b83\u4eec\u53ef\u4f5c\u4e00\u822c\u7684\u5b58\u50a8\u5668\u6307\u9488\u4f7f\u7528\u3002\u5728\u5b57\u7b26\u4e32\u64cd\u4f5c\u6307\u4ee4\u7684\u6267\u884c\u8fc7\u7a0b\u4e2d\uff0c\u5bf9\u5b83\u4eec\u6709\u7279\u5b9a\u7684\u8981\u6c42\uff0c\u800c\u4e14\u8fd8\u5177\u6709\u7279\u6b8a\u7684\u529f\u80fd\u3002
3\u3001\u6307\u9488\u5bc4\u5b58\u5668
32\u4f4dCPU\u67092\u4e2a32\u4f4d\u901a\u7528\u5bc4\u5b58\u5668EBP\u548cESP\u3002\u5176\u4f4e16\u4f4d\u5bf9\u5e94\u5148\u524dCPU\u4e2d\u7684SBP\u548cSP\uff0c\u5bf9\u4f4e16\u4f4d\u6570\u636e\u7684\u5b58\u53d6\uff0c\u4e0d\u5f71\u54cd\u9ad816\u4f4d\u7684\u6570\u636e\u3002
\u5bc4\u5b58\u5668EBP\u3001ESP\u3001BP\u548cSP\u79f0\u4e3a\u6307\u9488\u5bc4\u5b58\u5668(Pointer Register)\uff0c\u4e3b\u8981\u7528\u4e8e\u5b58\u653e\u5806\u6808\u5185\u5b58\u50a8\u5355\u5143\u7684\u504f\u79fb\u91cf\uff0c\u7528\u5b83\u4eec\u53ef\u5b9e\u73b0\u591a\u79cd\u5b58\u50a8\u5668\u64cd\u4f5c\u6570\u7684\u5bfb\u5740\u65b9\u5f0f\uff0c\u4e3a\u4ee5\u4e0d\u540c\u7684\u5730\u5740\u5f62\u5f0f\u8bbf\u95ee\u5b58\u50a8\u5355\u5143\u63d0\u4f9b\u65b9\u4fbf\u3002\u6307\u9488\u5bc4\u5b58\u5668\u4e0d\u53ef\u5206\u5272\u62108\u4f4d\u5bc4\u5b58\u5668\u3002\u4f5c\u4e3a\u901a\u7528\u5bc4\u5b58\u5668\uff0c\u4e5f\u53ef\u5b58\u50a8\u7b97\u672f\u903b\u8f91\u8fd0\u7b97\u7684\u64cd\u4f5c\u6570\u548c\u8fd0\u7b97\u7ed3\u679c\u3002
\u5b83\u4eec\u4e3b\u8981\u7528\u4e8e\u8bbf\u95ee\u5806\u6808\u5185\u7684\u5b58\u50a8\u5355\u5143\uff0c\u5e76\u4e14\u89c4\u5b9a\uff1a
BP\u4e3a\u57fa\u6307\u9488(Base Pointer)\u5bc4\u5b58\u5668\uff0c\u901a\u8fc7\u5b83\u51cf\u53bb\u4e00\u5b9a\u7684\u504f\u79fb\u503c\uff0c\u6765\u8bbf\u95ee\u6808\u4e2d\u7684\u5143\u7d20\uff1b
SP\u4e3a\u5806\u6808\u6307\u9488(Stack Pointer)\u5bc4\u5b58\u5668\uff0c\u5b83\u59cb\u7ec8\u6307\u5411\u6808\u9876\u3002
\u8bf4\u660e\uff1a\u56e0\u6808\u7684\u751f\u957f\u65b9\u5411\u662f\u4ece\u9ad8\u5730\u5740\u5411\u4f4e\u5730\u5740\u751f\u957f\uff0c\u6240\u4ee5\uff0c\u8fdb\u6808\u65f6\uff0csp\u81ea\u51cf\uff1b\u51fa\u6808\u65f6\uff0csp\u81ea\u589e\uff1b
4\u3001\u6bb5\u5bc4\u5b58\u5668
\u6bb5\u5bc4\u5b58\u5668\u662f\u6839\u636e\u5185\u5b58\u5206\u6bb5\u7684\u7ba1\u7406\u6a21\u5f0f\u800c\u8bbe\u7f6e\u7684\u3002\u5185\u5b58\u5355\u5143\u7684\u7269\u7406\u5730\u5740\u7531\u6bb5\u5bc4\u5b58\u5668\u7684\u503c\u548c\u4e00\u4e2a\u504f\u79fb\u91cf\u7ec4\u5408\u800c\u6210
\u7684\uff0c\u8fd9\u6837\u53ef\u7528\u4e24\u4e2a\u8f83\u5c11\u4f4d\u6570\u7684\u503c\u7ec4\u5408\u6210\u4e00\u4e2a\u53ef\u8bbf\u95ee\u8f83\u5927\u7269\u7406\u7a7a\u95f4\u7684\u5185\u5b58\u5730\u5740\u3002
5\u3001\u6307\u4ee4\u6307\u9488\u5bc4\u5b58\u5668
32\u4f4dCPU\u628a\u6307\u4ee4\u6307\u9488\u6269\u5c55\u523032\u4f4d\uff0c\u5e76\u8bb0\u4f5cEIP\uff0cEIP\u7684\u4f4e16\u4f4d\u4e0e\u5148\u524dCPU\u4e2d\u7684IP\u4f5c\u7528\u76f8\u540c\u3002
\u6307\u4ee4\u6307\u9488EIP\u3001IP(Instruction Pointer)\u662f\u5b58\u653e\u4e0b\u6b21\u5c06\u8981\u6267\u884c\u7684\u6307\u4ee4\u5728\u4ee3\u7801\u6bb5\u7684\u504f\u79fb\u91cf\u3002\u5728\u5177\u6709\u9884\u53d6\u6307\u4ee4\u529f\u80fd\u7684\u7cfb\u7edf\u4e2d\uff0c\u4e0b\u6b21\u8981\u6267\u884c\u7684\u6307\u4ee4\u901a\u5e38\u5df2\u88ab\u9884\u53d6\u5230\u6307\u4ee4\u961f\u5217\u4e2d\uff0c\u9664\u975e\u53d1\u751f\u8f6c\u79fb\u60c5\u51b5\u3002\u6240\u4ee5\uff0c\u5728\u7406\u89e3\u5b83\u4eec\u7684\u529f\u80fd\u65f6\uff0c\u4e0d\u8003\u8651\u5b58\u5728\u6307\u4ee4\u961f\u5217\u7684\u60c5\u51b5\u3002
\u5728\u5b9e\u65b9\u5f0f\u4e0b\uff0c\u7531\u4e8e\u6bcf\u4e2a\u6bb5\u7684\u6700\u5927\u8303\u56f4\u4e3a64K\uff0c\u6240\u4ee5\uff0cEIP\u4e2d\u7684\u9ad816\u4f4d\u80af\u5b9a\u90fd\u4e3a0\uff0c\u6b64\u65f6\uff0c\u76f8\u5f53\u4e8e\u53ea\u7528\u5176\u4f4e16\u4f4d\u7684IP\u6765\u53cd\u6620\u7a0b\u5e8f\u4e2d\u6307\u4ee4\u7684\u6267\u884c\u6b21\u5e8f\u3002
6\u3001\u6807\u5fd7\u5bc4\u5b58\u5668
CPU\u7b80\u4ecb\uff1a\u4e2d\u592e\u5904\u7406\u5668(CPU\uff0c\u82f1\u8bed\uff1aCentral
Processing
Unit)\uff0c\u662f\u7535\u5b50\u8ba1\u7b97\u673a\u7684\u4e3b\u8981\u8bbe\u5907\u4e4b\u4e00\uff0c\u7535\u8111\u4e2d\u7684\u6838\u5fc3\u914d\u4ef6\u3002\u5176\u529f\u80fd\u4e3b\u8981\u662f\u89e3\u91ca\u8ba1\u7b97\u673a\u6307\u4ee4\u4ee5\u53ca\u5904\u7406\u8ba1\u7b97\u673a\u8f6f\u4ef6\u4e2d\u7684\u6570\u636e\u3002\u7535\u8111\u4e2d\u6240\u6709\u64cd\u4f5c\u90fd\u7531CPU\u8d1f\u8d23\u8bfb\u53d6\u6307\u4ee4\uff0c\u5bf9\u6307\u4ee4\u8bd1\u7801\u5e76\u6267\u884c\u6307\u4ee4\u7684\u6838\u5fc3\u90e8\u4ef6\u3002
CPU\u7ec4\u6210\u7ed3\u6784\uff1aCPU\u5305\u62ec\u8fd0\u7b97\u903b\u8f91\u90e8\u4ef6\u3001\u5bc4\u5b58\u5668\u90e8\u4ef6\uff0c\u8fd0\u7b97\u5668\u548c\u63a7\u5236\u90e8\u4ef6\u7b49\u3002
1\uff1a\u8fd0\u7b97\u903b\u8f91\u90e8\u4ef6\uff1a
\u8fd0\u7b97\u903b\u8f91\u90e8\u4ef6\uff0c\u53ef\u4ee5\u6267\u884c\u5b9a\u70b9\u6216\u6d6e\u70b9\u7b97\u672f\u8fd0\u7b97\u64cd\u4f5c\u3001\u79fb\u4f4d\u64cd\u4f5c\u4ee5\u53ca\u903b\u8f91\u64cd\u4f5c\uff0c\u4e5f\u53ef\u6267\u884c\u5730\u5740\u8fd0\u7b97\u548c\u8f6c\u6362\u3002
2\uff1a\u5bc4\u5b58\u5668\u90e8\u4ef6\uff1a\u5bc4\u5b58\u5668\u90e8\u4ef6\uff0c\u5305\u62ec\u901a\u7528\u5bc4\u5b58\u5668\u3001\u4e13\u7528\u5bc4\u5b58\u5668\u548c\u63a7\u5236\u5bc4\u5b58\u5668\u3002\u901a\u7528\u5bc4\u5b58\u5668\u53c8\u53ef\u5206\u5b9a\u70b9\u6570\u548c\u6d6e\u70b9\u6570\u4e24\u7c7b\uff0c\u5b83\u4eec\u7528\u6765\u4fdd\u5b58\u6307\u4ee4\u4e2d\u7684\u5bc4\u5b58\u5668\u64cd\u4f5c\u6570\u548c\u64cd\u4f5c\u7ed3\u679c\u3002
\u2460\u901a\u7528\u5bc4\u5b58\u5668\u662f\u4e2d\u592e\u5904\u7406\u5668\u7684\u91cd\u8981\u7ec4\u6210\u90e8\u5206\uff0c\u5927\u591a\u6570\u6307\u4ee4\u90fd\u8981\u8bbf\u95ee\u5230\u901a\u7528\u5bc4\u5b58\u5668\u3002\u901a\u7528\u5bc4\u5b58\u5668\u7684\u5bbd\u5ea6\u51b3\u5b9a\u8ba1\u7b97\u673a\u5185\u90e8\u7684\u6570\u636e\u901a\u8def\u5bbd\u5ea6\uff0c\u5176\u7aef\u53e3\u6570\u76ee\u5f80\u5f80\u53ef\u5f71\u54cd\u5185\u90e8\u64cd\u4f5c\u7684\u5e76\u884c\u6027\u3002\u4e13\u7528\u5bc4\u5b58\u5668\u662f\u4e3a\u4e86\u6267\u884c\u4e00\u4e9b\u7279\u6b8a\u64cd\u4f5c\u6240\u9700\u7528\u7684\u5bc4\u5b58\u5668\u3002
\u2461\u63a7\u5236\u5bc4\u5b58\u5668\u901a\u5e38\u7528\u6765\u6307\u793a\u673a\u5668\u6267\u884c\u7684\u72b6\u6001\uff0c\u6216\u8005\u4fdd\u6301\u67d0\u4e9b\u6307\u9488\uff0c\u6709\u5904\u7406\u72b6\u6001\u5bc4\u5b58\u5668\u3001\u5730\u5740\u8f6c\u6362\u76ee\u5f55\u7684\u57fa\u5730\u5740\u5bc4\u5b58\u5668\u3001\u7279\u6743\u72b6\u6001\u5bc4\u5b58\u5668\u3001\u6761\u4ef6\u7801\u5bc4\u5b58\u5668\u3001\u5904\u7406\u5f02\u5e38\u4e8b\u6545\u5bc4\u5b58\u5668\u4ee5\u53ca\u68c0\u9519\u5bc4\u5b58\u5668\u7b49\u3002
3\uff1a\u63a7\u5236\u90e8\u4ef6\uff1a\u63a7\u5236\u90e8\u4ef6\uff0c\u4e3b\u8981\u8d1f\u8d23\u5bf9\u6307\u4ee4\u8bd1\u7801\uff0c\u5e76\u4e14\u53d1\u51fa\u4e3a\u5b8c\u6210\u6bcf\u6761\u6307\u4ee4\u6240\u8981\u6267\u884c\u7684\u5404\u4e2a\u64cd\u4f5c\u7684\u63a7\u5236\u4fe1\u53f7\u3002\u5176\u7ed3\u6784\u6709\u4e24\u79cd\uff1a\u4e00\u79cd\u662f\u4ee5\u5fae\u5b58\u50a8\u4e3a\u6838\u5fc3\u7684\u5fae\u7a0b\u5e8f\u63a7\u5236\u65b9\u5f0f;\u4e00\u79cd\u662f\u4ee5\u903b\u8f91\u786c\u5e03\u7ebf\u7ed3\u6784\u4e3a\u4e3b\u7684\u63a7\u5236\u65b9\u5f0f\u3002
CPU\u4e3b\u8981\u529f\u80fd
\u2460\u6307\u4ee4\u987a\u5e8f\u63a7\u5236\uff1a\u8fd9\u662f\u6307\u63a7\u5236\u7a0b\u5e8f\u4e2d\u6307\u4ee4\u7684\u6267\u884c\u987a\u5e8f\u3002\u7a0b\u5e8f\u4e2d\u7684\u5404\u6307\u4ee4\u4e4b\u95f4\u662f\u6709\u4e25\u683c\u987a\u5e8f\u7684\uff0c\u5fc5\u987b\u4e25\u683c\u6309\u7a0b\u5e8f\u89c4\u5b9a\u7684\u987a\u5e8f\u6267\u884c\uff0c\u624d\u80fd\u4fdd\u8bc1\u8ba1\u7b97\u673a\u5de5\u4f5c\u7684\u6b63\u786e\u6027\u3002
\u2461\u64cd\u4f5c\u63a7\u5236\uff1a\u4e00\u6761\u6307\u4ee4\u7684\u529f\u80fd\u5f80\u5f80\u662f\u7531\u8ba1\u7b97\u673a\u4e2d\u7684\u90e8\u4ef6\u6267\u884c\u4e00\u5e8f\u5217\u7684\u64cd\u4f5c\u6765\u5b9e\u73b0\u7684\u3002CPU\u8981\u6839\u636e\u6307\u4ee4\u7684\u529f\u80fd\uff0c\u4ea7\u751f\u76f8\u5e94\u7684\u64cd\u4f5c\u63a7\u5236\u4fe1\u53f7\uff0c\u53d1\u7ed9\u76f8\u5e94\u7684\u90e8\u4ef6\uff0c\u4ece\u800c\u63a7\u5236\u8fd9\u4e9b\u90e8\u4ef6\u6309\u6307\u4ee4\u7684\u8981\u6c42\u8fdb\u884c\u52a8\u4f5c\u3002
\u2462\u65f6\u95f4\u63a7\u5236\uff1a\u65f6\u95f4\u63a7\u5236\u5c31\u662f\u5bf9\u5404\u79cd\u64cd\u4f5c\u5b9e\u65bd\u65f6\u95f4\u4e0a\u7684\u5b9a\u65f6\u3002\u5728\u4e00\u6761\u6307\u4ee4\u7684\u6267\u884c\u8fc7\u7a0b\u4e2d\uff0c\u5728\u4ec0\u4e48\u65f6\u95f4\u505a\u4ec0\u4e48\u64cd\u4f5c\u5747\u5e94\u53d7\u5230\u4e25\u683c\u7684\u63a7\u5236\u3002\u53ea\u6709\u8fd9\u6837\uff0c\u8ba1\u7b97\u673a\u624d\u80fd\u6709\u6761\u4e0d\u7d0a\u5730\u81ea\u52a8\u5de5\u4f5c\u3002
\u2463\u6570\u636e\u52a0\u5de5:\u5373\u5bf9\u6570\u636e\u8fdb\u884c\u7b97\u672f\u8fd0\u7b97\u548c\u903b\u8f91\u8fd0\u7b97\uff0c\u6216\u8fdb\u884c\u5176\u4ed6\u7684\u4fe1\u606f\u5904\u7406\u3002
OF: 溢出标志位OF用于反映有符号数加减运算所得结果是否溢出。如果运算结果超过当前运算位数所能表示的范围,则称为溢出,OF的值被置为1,否则,OF的值被清为0.
DF: 方向标志DF位用来决定在串操作指令执行时有关指针寄存器发生调整的方向。
IF: 中断允许标志IF位用来决定CPU是否响应CPU外部的可屏蔽中断发出的中断请求。但不管该标志为何值,CPU都必须响应CPU外部的不可屏蔽中断所发出的中断请求,以及CPU内部产生的中断请求。具体规定如下:
(1)、当IF=1时,CPU可以响应CPU外部的可屏蔽中断发出的中断请求;
(2)、当IF=0时,CPU不响应CPU外部的可屏蔽中断发出的中断请求。
TF: 状态控制标志位是用来控制CPU操作的,它们要通过专门的指令才能使之发生改变
SF: 符号标志SF用来反映运算结果的符号位,它与运算结果的最高位相同。在微机系统中,有符号数采用补码表示法,所以,SF也就反映运算结果的正负号。运算结果为正数时,SF的值为0,否则其值为1。
ZF: 零标志ZF用来反映运算结果是否为0。如果运算结果为0,则其值为1,否则其值为0。在判断运算结果是否为0时,可使用此标志位。
AF: 下列情况下,辅助进位标志AF的值被置为1,否则其值为0:
(1)、在字操作时,发生低字节向高字节进位或借位时;
(2)、在字节操作时,发生低4位向高4位进位或借位时。
PF: 奇偶标志PF用于反映运算结果中“1”的个数的奇偶性。如果“1”的个数为偶数,则PF的值为1,否则其值为0。
CF: 进位标志CF主要用来反映运算是否产生进位或借位。如果运算结果的最高位产生了一个进位或借位,那么,其值为1,否则其值为0。)
以上是8086寄存器的整体概况, 自80386开始,PC进入
32bit时代,其寻址方式,寄存器大小, 功能等都发生了变化, 要想学习这方面知识请参考相应资料.
关于寄存器就写这么多了,学习汇编和学习别的语言一样
要多想,多练,多看, 这样才会有提高.
下面是一些汇编书籍和网站, 对你学习会有帮助的.
网站:
http://www.x86asm.com/ x86汇编小站
http://www.aogosoft.com/ Aogo汇编小站
http://211.90.225.98:22366/ 罗云彬的编程乐园
http://cn.codeof.com/articles/programming/masm/
里面有汇编学习资料.
书籍:
1. IBM-PC 汇编语言程序设计(2th)
2. <<80x86 IBM PC及兼容计算机(卷I和II) — 汇编语言、设计与接口技术>>; 这本书很牛, 建议入手;
中文的汇编好书比较少,如果你英语不错的话,可以看看
下面这些(都很经典!!!):
01. <<Mastering Turbo Assembler>>
02. <<Using Assembly Language>>
04. <<Assembly Language Primer for the IBM PC/XT>>
05. <<Assembly Language from Square One>>
06. <<Assembly Language for the IBM PC>>
07. <<Assembly Language and Systems Programming for the IBM PC and Compatables>>
08. <<Assembler Inside & Out>>
09. <<The Zen of Assembly>>
10. <<IBM Microcomputers: A Programmer's Handbook>>
11. <<Programmer's Problem Solver for the IBM PC, XT, and AT>>
12. <<IBM PC ASSEMBLER LANGUAGE AND PROGRAMMING>>
13. <<80386: A Programming and Design Handbook>>, 2nd Ed
14. <<80486 Programming>>
15. <<Master Class Assembly Language>>
16. <<Programmer's Guide to PC & PS/2 Video Systems>>
17. <<Power Graphics Programming>>
18. <<Programmers Guide to the EGA and VGA cards>>, 3rd Ed.
19. <<AdvancEd Programmers Guide to the EGA/VGA>>
20. <<UndocumentEd DOS>>
21. <<DOS Programmer's Reference>>
22. <<386SX Microprocessor Programmer's Reference Manual>>
23. <<i486 Microprocessor Programmer's Reference Manual>>
24. <<The Programmer's PC Sourcebook>>
25. <<System BIOS for IBM PCs, Compatables, and EISA Computers>>, 2nd Ed.
26. <<PC Magazine Programmers Technical Reference: The Processor and Coprocessor>>
27. <<Mastering Serial Communications>>
28. <<DOS Programmer's Reference>>, 2nd Ed.
29. <<MS-DOS Programmer's Reference>>
最后祝你学习愉快
绛旓細CPU鐨勫瘎瀛樺櫒涓昏鍖呮嫭浠ヤ笅鍑犵锛鎸囦护瀵勫瓨鍣紙IR锛夈佺▼搴忚鏁板櫒锛圥C锛夈佸湴鍧瀵勫瓨鍣紙AR锛夈佹暟鎹瘎瀛樺櫒锛圖R锛夈佺姸鎬佸瘎瀛樺櫒锛圫R锛銆備互涓嬫槸鍏充簬CPU瀵勫瓨鍣ㄧ殑璇︾粏瑙i噴锛氭寚浠ゅ瘎瀛樺櫒锛圛R锛夛細鐢ㄤ簬瀛樺偍褰撳墠姝e湪鎵ц鐨勬寚浠ゃ侰PU鍦ㄦ墽琛屾寚浠ゆ椂锛岄鍏堜細鍙栧緱鎸囦护锛岀劧鍚庡皢鍏跺瓨鍌ㄥ湪鎸囦护瀵勫瓨鍣ㄤ腑銆傝繖鏄疌PU鎵ц绋嬪簭鐨勭涓姝ャ傜▼搴...
绛旓細CPU瀵勫瓨鍣ㄤ富瑕佹湁浠ヤ笅鍑犵锛1. 閫氱敤瀵勫瓨鍣細鐢ㄤ簬瀛樻斁鍙備笌杩愮畻鐨勬暟鎹垨鎸囦护鐨勫湴鍧淇℃伅銆傞氱敤瀵勫瓨鍣ㄧ殑鏁伴噺鏍规嵁鍏蜂綋鐨凜PU鏋舵瀯鍜岃璁¤屾湁鎵涓嶅悓銆傚ARM鏋舵瀯涓殑R0鑷砇14閮芥槸閫氱敤瀵勫瓨鍣紝瀹冧滑鐢ㄤ簬瀛樺偍鏁版嵁鎴栧湴鍧淇℃伅銆傞氱敤瀵勫瓨鍣ㄤ篃鍙互鐢ㄤ簬瀛樻斁瀛愮▼搴忕殑杩斿洖鍦板潃鎴栬烦杞寚浠ょ殑鐩爣鍦板潃绛夈2. 鎸囦护瀵勫瓨鍣細瀛樺偍褰撳墠姝e湪鎵...
绛旓細1銆佹暟鎹瘎瀛樺櫒 鏁版嵁瀵勫瓨鍣ㄤ富瑕佺敤鏉ヤ繚瀛樻搷浣滄暟鍜岃繍绠楃粨鏋滅瓑淇℃伅锛屼粠鑰岃妭鐪佽鍙栨搷浣滄暟鎵闇鍗犵敤鎬荤嚎鍜岃闂瓨鍌ㄥ櫒鐨勬椂闂淬2銆佸彉鍧瀵勫瓨鍣 32浣岰PU鏈2涓32浣嶉氱敤瀵勫瓨鍣‥SI鍜孍DI銆傚叾浣16浣嶅搴斿厛鍓岰PU涓殑SI鍜孌I锛屽浣16浣嶆暟鎹殑瀛樺彇锛屼笉褰卞搷楂16浣嶇殑鏁版嵁銆傚瘎瀛樺櫒ESI銆丒DI銆丼I鍜孌I绉颁负鍙樺潃瀵勫瓨鍣(Index Registe...
绛旓細1銆侀氱敤瀵勫瓨鍣ㄧ粍 閫氱敤瀵勫瓨鍣ㄧ粍鍖呮嫭AX銆丅X銆丆X銆丏X4涓16浣嶅瘎瀛樺櫒锛岀敤浠ュ瓨鏀16浣嶆暟鎹垨鍦板潃銆備篃鍙敤浣8浣嶅瘎瀛樺櫒銆傜敤浣8浣嶅瘎瀛樺櫒鏃跺垎鍒涓篈H銆丄L銆丅H銆丅L銆丆H銆丆L銆丏H銆丏L銆2銆佹瀵勫瓨鍣 閲囩敤鍒嗘鎶鏈潵瑙e喅銆傚皢1MB鐨勫瓨鍌ㄧ┖闂村垎鎴愯嫢骞查昏緫娈碉紝姣忔鏈闀64KB锛岃繖浜涢昏緫娈靛湪鏁翠釜瀛樺偍绌洪棿涓彲娴姩銆3銆佹寚閽...
绛旓細鎸囦护瀵勫瓨鍣 (IR): 淇濆瓨褰撳墠姝e湪鎵ц鐨勬寚浠锛屾槸CPU鐨勬牳蹇冪粍鎴愰儴鍒嗐傜储寮曞瘎瀛樺櫒: 鍦ㄧ▼搴忚繍琛屾椂锛岀敤浜庡姩鎬佽皟鏁磋繍绠楀璞$殑鍦板潃銆傛ā寮忔寚绀哄瘎瀛樺櫒锛堜篃绉颁负鈥滄満鍣ㄦ寚绀哄瘎瀛樺櫒鈥濓級锛氬偍瀛樺拰璁剧疆涓庡鐞嗗櫒鐩稿叧鐨勬暟鎹紝涓嶅悓鏋舵瀯涓嬬殑鍔熻兘鍚勫紓锛岄氬父涓庣壒瀹氬鐞嗗櫒璁捐绱у瘑鍏宠仈锛屼笉浣滀负澶勭悊鍣ㄤ笘浠i棿閫氱敤鏍囧噯銆傛澶栵紝杩樻湁涓嶤PU...
绛旓細8086 CPU涓殑瀵勫瓨鍣ㄥ寘鎷細1. 閫氱敤瀵勫瓨鍣 2. 鎺у埗瀵勫瓨鍣 3. 鐘舵佸瘎瀛樺櫒 鎺ヤ笅鏉ヨ繘琛 閫氱敤瀵勫瓨鍣細閫氱敤瀵勫瓨鍣ㄦ槸鐢ㄤ簬瀛樺偍鏁版嵁鍜屼腑闂寸粨鏋滅殑瀵勫瓨鍣ㄣ傚湪8086 CPU涓紝涓昏鏈堿X銆丅X銆丆X鍜孌X鍥涗釜閫氱敤瀵勫瓨鍣ㄣ傝繖浜涘瘎瀛樺櫒鍙互鐢ㄤ簬绠楁湳杩愮畻銆佹暟鎹紶杈撳拰鍏朵粬澶氱鎿嶄綔銆備緥濡傦紝AX瀵勫瓨鍣ㄥ彲浠ョ敤浜庣疮鍔犲櫒鐨勬搷浣滐紝BX甯哥敤浜庡熀鍧...
绛旓細8086 CPU鏈変互涓嬪瘎瀛樺櫒锛1. 閫氱敤瀵勫瓨鍣 2. 鎺у埗瀵勫瓨鍣 3. 鐘舵佸瘎瀛樺櫒 鎺ヤ笅鏉ヨ繘琛岃缁嗚В閲婏細閫氱敤瀵勫瓨鍣細閫氱敤瀵勫瓨鍣ㄥ寘鎷珹X銆丅X銆丆X鍜孌X绛夈傝繖浜涘瘎瀛樺櫒涓昏鐢ㄤ簬瀛樺偍鏁版嵁鍜屼腑闂寸粨鏋溿傚湪绠楁湳杩愮畻鍜岄昏緫杩愮畻涓紝瀹冧滑鍏呭綋涓存椂瀛樺偍鐨勮鑹层備緥濡傦紝AX瀵勫瓨鍣ㄥ父鐢ㄤ簬绱姞鍣ㄧ殑鎿嶄綔锛孊X鍜孋X鐢ㄤ簬绱㈠紩鍜岃鏁帮紝DX鍒欑敤浜嶪/O...
绛旓細涓ぎ澶勭悊鍣╟pu鍖呮嫭杩愮畻閫昏緫閮ㄤ欢銆佸瘎瀛樺櫒閮ㄤ欢鍜屾帶鍒堕儴浠躲備腑澶鐞嗗櫒浠庡瓨鍌ㄥ櫒鎴栭珮閫熺紦鍐插瓨鍌ㄥ櫒涓彇鍑烘寚浠わ紝鏀惧叆鎸囦护瀵勫瓨鍣锛屽苟瀵规寚浠よ瘧鐮併傚畠鎶婃寚浠ゅ垎瑙f垚涓绯诲垪鐨勫井鎿嶄綔锛岀劧鍚庡彂鍑哄悇绉嶆帶鍒跺懡浠わ紝鎵ц寰搷浣滅郴鍒楋紝浠庤屽畬鎴愪竴鏉℃寚浠ょ殑鎵ц銆傛寚浠ゆ槸璁$畻鏈鸿瀹氭墽琛屾搷浣滅殑绫诲瀷鍜屾搷浣滄暟鐨勫熀鏈懡浠ゃ傗憼杩愮畻閫昏緫閮ㄤ欢銆傚彲浠...
绛旓細甯哥敤浜庤鏁帮紱甯哥敤浜庝繚瀛樿绠楀,濡傚湪绉讳綅鎸囦护,寰幆(loop)鍜屼覆澶勭悊鎸囦护涓敤浣滈殣鍚殑璁℃暟鍣.\x0d\x0aDH&DL锛滵X(data)锛鏁版嵁瀵勫瓨鍣锛屽父鐢ㄤ簬鏁版嵁浼犻掋俓x0d\x0a浠栦滑鐨勭壒鐐规槸,杩4涓16浣嶇殑瀵勫瓨鍣ㄥ彲浠ュ垎涓洪珮8浣: AH, BH, CH, DH.浠ュ強浣庡叓浣嶏細AL,BL,CL,DL銆傝繖2缁8浣嶅瘎瀛樺櫒鍙互鍒嗗埆瀵诲潃锛...
绛旓細瀵勫瓨鍣ㄩ儴浠躲傚寘鎷閫氱敤瀵勫瓨鍣銆佷笓鐢ㄥ瘎瀛樺櫒鍜屾帶鍒跺瘎瀛樺櫒銆傞氱敤瀵勫瓨鍣ㄥ張鍙垎瀹氱偣鏁板拰娴偣鏁颁袱绫伙紝瀹冧滑鐢ㄦ潵淇濆瓨鎸囦护涓殑瀵勫瓨鍣ㄦ搷浣滄暟鍜屾搷浣滅粨鏋溿傞氱敤瀵勫瓨鍣ㄦ槸涓ぎ澶勭悊鍣ㄧ殑閲嶈缁勬垚閮ㄥ垎 锛屽ぇ澶氭暟鎸囦护閮借璁块棶鍒伴氱敤瀵勫瓨鍣ㄣ