作者cipherman (雨云无日晴)
看板CSSE
标题Re: [问题] 指令集一问
时间Sat Nov 5 02:28:07 2005
※ 引述《hardcover (精装版喔)》之铭言:
: ※ 引述《cipherman (雨云无日晴)》之铭言:
: : ROM里有存没错...
: : 我想你要找的答案应该是Decoder...
: : 也就是在CPU里的control unit....
: : 里面设计的电路会按照所decode出来的讯息向datapath中的各元件发出控制的讯号...
: 谢谢
: 所以指令集指的就是解码程序?
: 然後这个程序是存在 ROM 里面?
这样解释比较恰当吧...
指令集(instruction set)是个抽象的概念...
是计算机所能做的所有动作的一个集合...
而control unit是这个集合的一个implementation的一部分...
(中文解做"实作",但我觉得"实体化"或"具体实现"比较接近这个字要表达的概念)...
整个电脑才算是这个指令集的一个implementation....
会说control unit是因粗略上来说,这个部分决定、指挥了所有各部分的动作...
某种意义上算是"定义"了电脑的动作...也就是如此,粗略得等於指令集的概念...
所以decode算是impemetation的一部分,不是指令集...
因此你要"定义"一台电脑,往往从定义其所能做的动作下手(也就是指令集的设计了)..
而你要怎麽具体得去做这台电脑,每个人做法不一...
你可以用ROM储存的方式去做decode的动作...
你也可以用finite automaton的方式去做...
当然你也可以找到其他的方去做,看需求而定...
只要执行的动作同样的input进去,output的结果一样就行了...
((白话一点,AMD的一些CPU和Intel的一些CPU指令集一样,都是x86系列的,
但里面的设计可能有都很大的差异....但都能做同样的动作..差在效能等等的))
所以,您老师回答您的,还有您上面所说的可以说是正确,然而不尽正确...
这一切都端看讨论的是哪颗cpu...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.175.52.70
※ 编辑: cipherman 来自: 218.175.52.70 (11/05 02:40)
※ 编辑: cipherman 来自: 218.175.52.70 (11/05 02:43)
1F:推 hardcover:感谢...计组变强了 XD 11/05 16:24
2F:推 come:其实他还是没说清楚CU如何运作 11/07 00:18
3F:→ come:我觉得你们老师的问题其实要去查CU内部的运作原理 11/07 00:20
4F:→ come:而这位网友只说明了为什麽要有指令集 11/07 00:20
5F:→ cipherman:因原po没问CU的实作啊...他只问了指令集的概念... 11/07 01:50
6F:推 cipherman:而且CU做法百百种...查书比较快,这里不好解释... 11/07 01:53
7F:→ cipherman:指令集存在哪里...回答这个问题之前要清楚指令集是什麽 11/07 01:56