一、指令分類
cisc指令集的長度不是固定的,可以按照指令的複雜度對**進行分類。
針對x86指令集,有些短指令的翻譯十分簡單(比如不需要解析ev等字段),可以在解析之後迅速翻譯,可以按照以下規則進行分類:
1、有沒有字首位元組。
2、單位元組指令。
3、簡單的操作碼,比如僅僅是暫存器操作。
4、複雜的指令,多操作碼可以對相似的操作進行歸類。
我覺得switch case是比較好的方法,即可以將指令進行分類又可以合併複雜指令的相似操作。
二、二進位制翻譯中的內嵌c語言
1、指令比較複雜,需要很多臨時暫存器。
2、host不支援target的指令,比如arm沒有除法指令。
3、和硬體的關係比較密切,需要在彙編中呼叫c函式,比如 ioport操作。
三、關於中間**的利弊分析
優點:有利於**的優化。
有利於進行跨平台的設計。
缺點有損效能。
採用三位址法來描述乙個中間**
hello world驅動設計 x86
1.這個驅動有啥不同 最近發現很多教程,上來就是往寫led驅動,對於新手我 看到了一種更適合作為驅動設計hello world的寫法,因此有了這篇博文。事不宜遲主要介紹一下這個驅動設計有啥不同 1 其中p5有詳細的流程介紹 2.驅動的實現 2.1 驅動開發的架構 圖2 1 驅動開發架構示意圖 2.2...
《ubuntu下x86彙編》之x86處理器
一 處理器基本資訊 cat proc cpuinfo processor 0 vendor id genuineintel cpu family 6 model 23 model name pentium r dual core cpu e5500 2.80ghz processor 1 vendo...
從x86看虛擬化的前世今生
羽翼漸豐 由於虛擬化技術技術在商業應用上的優勢,risc伺服器與小型機成為了虛擬化 技術第二波受益者。1999年,ibm公司在as 400上提出了上 邏輯分割槽 lpar 技術和新的高可用性集群解決方案。在power管理程式上執行的as 400 lpar令單台伺服器工作起來如同12個獨立的伺服器。而...