2017-09-13 34 views
0

我學習什麼使一個計算機computer存儲ISA的位置以及它究竟如何考慮?

到目前爲止,我知道我們有

高級語言 - >

- >編譯成低級語言(assembly language) - >

- >哪些彙編然後使用直接將指令發送到使用Machine Code

的指示CPU離子必須遵守相應的CPU架構以及該CPU使用的ISA(指令集架構)。

並且CPU通過各種通道從註冊表或從hdd(或從sdd等)讀取/寫入數據。


是我到目前爲止所讀文章沒有提到這次旅程以下兩種(鑰匙,從我的POV)方面,一個指令將使:

  1. 哪裏究竟是ISA存儲?整個系統的哪個組件?
  2. And 如何將CPU考慮在內?旅途中的哪個地方?它是否「明確地詢問」ISA(不知何故),如果收到的指令是有效的?
+2

你可能會做一些CPU實現研究更好。有多種方式可以實現CPU的指令集,例如微碼。它存儲了什麼組件? CPU。 –

+3

CPU設計形成ISA本身。它會嘗試解釋存儲器中的任何值(指向由指令指針地址執行的下一個指令)作爲指令。它可能是這樣設計的,即某些值不是有效的指令,並且會導致它失敗,或者它的ISA可能覆蓋所有可能的值,並且即使當您指向CPU執行隨機塊時也會執行一些有效的指令值。彙編器不向CPU發送指令,它準備這樣的內存(機器碼)內容,並且通常將其存儲在存儲設備上的文件中,以供以後使用(執行)。 – Ped7g

+4

「ISA存儲在哪裏」就像「存儲在什麼樣的書中是什麼」 – harold

回答

2

ISA不像是存儲數據的過程。這是硬件和軟件之間接口的祕訣。指令集由信息(更具體地說是二進制位)組成。編譯器將代碼分解爲這種抽象級別。在這個級別以下,我們可以使用微程序控制架構或硬件控制架構來執行門級活動。因此,ISA可以被看作是操作門的編碼方案。

相關問題