能不能做X86指令集到MIPS指令集翻譯的硬體方案

2022-11-28 04:46:33 字數 2898 閱讀 7013

1樓:霸7威武

risc的設計重點在於降低由硬體執行指令的複雜度,因為軟體比硬體容易提供更大的靈活性和更高的智慧型,因此risc設計對編譯器有更高的要求;

cisc的設計則更側重於硬體執行指令的功能,使cisc的指令變得很複雜。

總之risc對編譯器的要求高,cisc強調硬體的複雜性,cpu的實現更複雜。

mips和powerpc是risc構架,基於load/store的記憶體訪問方式,長度固定的指令,流水線結構。

而mips是教科書似的risc構架,使它和其它的risc構架顯得很不同,比如delay slot,cache管理,tlb管理都需要很繁瑣的軟體配合,相對來說powerpc更偏向於向實際應用傾斜,比如有功能強大也讓人頭痛的移位指令、旋轉指令。

而x86,曾經是cisc的典型,不過現在只是risc的核心披了件cisc的外衣,從 pentium開始,cisc指令在內部被解碼成幾條risc指令,即所謂的uops,然後通過處理器排程機制將指令分配給risc核心進行。

x86不同於risc的地方:硬體管理的tlb,長短不一且執行時間也長短不一的指令。

2樓:

廢話,當然能。

據說高通在微軟的支援下,正在搞這套東東,,以實現爪機處理器相容支援x86系統以及應用軟體,但被英特爾強力警告專利侵權

現在腦子亂掉了。arm指令集,x86指令集。。這些是組合語言的一部分嗎?還有個什麼mips....

3樓:匿名使用者

組合語言是跟處理器架構相關的。

arm,x86,mips屬於不用的處理器架構,也算相對應用最廣泛的的三種了吧。

arm主要搶占了消費電子領域,手機,平板等基本都是arm。

x86是個人電腦的主宰者,但是受到了arm的強烈衝擊,特別是到64位處理階段,很多大公司都投降到arm這邊了。

mips也是很流行的處理器架構,我所知道的是國產的龍芯,還有microchip。

不用的處理器架構有不同的組合語言。arm有arm彙編,x86有x86彙編,mips有mips彙編。

電腦上用的intel處理器,基本都是x86的。

手機,平板級別的產品,處理器基本都是arm家族的。

x86指令集的內容有哪些?

關於cpu指令集,幫我理一下思路。

4樓:匿名使用者

懸賞真高,盡量詳細作答。

錯誤挺多的嘛,慢慢解釋

註明下面可能用到的一些名詞的意義

micro-arch微架構

isa指令集架構(指令集)

cpu處理器

hal硬體抽象層

pll物理邏輯層

先說指令集,指令集是乙個cpu和軟體之間的介面。他不是乙個實物,只是cpu提供給上層軟體的乙個抽象。

所以程式設計師在程式設計時並不需要了解晶元的布局,只需要知道根據那些指令能完成怎樣的功能就行了(這些指令由cpu執行)。

為了方便理解,我做個比喻會好一些,就像你買來乙個燈泡你並不需要知道燈泡裡面的電路時如何布局的,只是簡單的看看說明書,怎樣裝上,怎樣通電就能實現發光的供能了。燈泡好比cpu,isa就是說明書,人就當程式設計師(編譯器)的角色。

再來說彙編指令,機器指令的關係,cpu執行的是二進位制**(這叫機器指令,機器能理解的),彙編就是給人看的,人能理解的,如add,sub指令。

每條彙編指令都有相應的二進位制**。完成他們之間的轉換是彙編器(現在的彙編器和編譯器是打包在一起的)。

不同的指令集有不同的指令,彙編指令對應的機器碼也不同。在乙個指令集中,一條彙編指令對應一條二進位制機器碼(圖,mips指令集彙編指令對應的機器指令)

現在的程式都是由高階語言編寫的,如c,c++,c#,等等,這個明顯比用組合語言去程式設計高效得多,高階語言到二進位制**的轉換時有編譯器去完成,當然編譯器還有優化**的功能,使**執行起來更有效率。(圖,手跡,一條 c語句對應的mips指令和機器所執行的二進位制**,感受一下高階語言程式設計的高效)

系統是介乎在應用程式層和硬體之間的,作用我也不太清楚,應該是為應用程式分配硬體資源,用哪段記憶體,什麼時候要使用cpu執行這樣吧??

cpu的指令集所包括含的指令取決於程式設計師需不需要這些指令,這些指令能不能代替以往的指令使程式執行起來更有效率,說白了就是這條指令有沒有存在的價值。

下面慢慢指出錯誤:

「彙編是老子,系統是兒子,程式就是小兒子了。」     ——完全沒有這個關係,他們不再同乙個層面上。完成的工作也不同。

「是不是我把彙編指令集的100多條命令背會了,就能寫出各種程式」  ——現在程式設計都用高階語言了。

「系統記憶體中的某些地方時受保護的,禁止檢視,裡面有不可告人的目的。於是我就在網上找資料,資料上說彙編可以實現機器語言幾乎所有的功能。看到這裡,我有些困惑了,那些彙編實現不了的,機器語言能辦到的,是不是就是那些不可告人的地方?

」   ——彙編的攻擊性的確很強,因為他可以用指令直接操作硬體。但系統就是為了不讓指令操作某些記憶體段,因為這段記憶體裡面放著一些重要的系統檔案,一旦被破壞就會造成系統崩潰。

「我猜cpu指令集和彙編指令集都是從機器語言中挑出來的吧!」——上面說了,cpu指令集是乙個抽象,他是兩個層面之間的介面,表現給下層硬體的是二進位制的機器碼,表現給應用層面的是彙編指令。一條彙編指令對應一條機器指令。

「cpu指令集對應的機器碼可以寫出乙個小的系統,然後寫出乙個最初的匯程式設計序,用彙編可以做乙個大大的系統,再做出更高階的程式語言,比如c,vc++

這麼想對嗎?」——系統和應用程式也是由高階語言編寫,因為高階語言開發(編寫)更有效率,**讀起來更容易理解

「位址匯流排就很容易理解。我的是32位系統,就是32個位址嘛!最後乙個位址是32個1。」——位址匯流排32位是cpu設計決定的,系統32位是系統的事,不能渾然一談。

碼字碼了很久,感覺問主還是個初學者啊,在這方面還需要多看看書

cpu的指令集有哪些?

孕期鑑定能不能做親子鑑定,孕期能不能做親子鑑定?

隨著鑑定水平的提高,現已能對胎兒進行親子鑑定,常用方法有血型檢查 早孕期絨毛膜酶型檢查等,其關鍵是要早爭取早孕期鑑定,而且要求無損於孕婦和胎兒 答案補充 只需3 5毫公升的羊水,但是抽取出來的羊水比較清澈透明,不能含有母親的血液成分,胎兒羊水鑑定需要三份樣本 羊水樣本,母親dna樣本,父親dna樣本...

能不能做均線多頭排列的選股公式,能不能做乙個均線多頭排列的選股公式?

多頭bai排列 duzhi ma c,5 ma c,10 and ma c,10 ma c,20 and ma c,20 ma c,60 and ma c,60 ma c,120 and ma c,120 ref ma c,120 1 and ma c,5 ref ma c,5 1 老實說,這個抄多...

能不能幫我寫出,用英語介紹自己能做和不能做的事情,五條句子拜託拜託了

i can do 什麼 i can not do 什麼 用英語表示能和不能做的句子 you can swim.你可以游泳 he can t read books.他不能讀書 誰英語翻譯好啊?能不能幫我翻譯一下所有句子,拜託拜託拜託拜託拜託拜託拜託拜託拜託 a 兒童節到了,mike將要舉辦個party...