計算機組成原理(四)——指令系統(tǒng)
指令格式
指令(又稱機器指令):是指示計算機執(zhí)行某種操作的命令,是計算機運行的最小功能單位。一臺計算機的所有指令的集合構成該機的指令系統(tǒng),也稱為指令集。注:一臺計算機只能執(zhí)行自己指令系統(tǒng)中的指令,不能執(zhí)行其他系統(tǒng)的指令。








尋址方式及指令尋址


操作數(shù)尋址方式






指令格式設計





?

MIPS指令

























快速面經(jīng)
Q: 行業(yè)內各個流行的 RPC 框架的優(yōu)劣對比

Q:?了解微服務的新趨勢 ServiceMesh,以及 RPC 框架和 ServiceMesh 的關系
A: Service Mesh又譯作“服務網(wǎng)格”,作為服務間通信的基礎設施層。Service Mesh 是一個基礎設施層,用于處理服務間通信。云原生應用有著復雜的服務拓撲,Service Mesh 保證請求可以在這些拓撲中可靠地穿梭。在實際應用當中,Service Mesh 通常是由一系列輕量級的網(wǎng)絡代理組成的,它們與應用程序部署在一起,但應用程序不需要知道它們的存在。Service Mesh 實際上就是處于 TCP/IP 之上的一個抽象層,它假設底層的 L3/L4 網(wǎng)絡能夠點對點地傳輸字節(jié)(當然,它也假設網(wǎng)絡環(huán)境是不可靠的,所以 Service Mesh 必須具備處理網(wǎng)絡故障的能力)。Service mesh 有如下幾個特點:應用程序間通訊的中間層;輕量級網(wǎng)絡代理;應用程序無感知;解耦應用程序的重試、超時、監(jiān)控、追蹤和服務發(fā)現(xiàn);

????在 Service Mesh 的形態(tài)下,RPC 框架中容易變更的內容被剝離到了 sidecar 進程,之前的胖 SDK 瘦身為只保留了功能恒定的協(xié)議編解碼能力。如此一來,與 RPC 框架演進相關的邏輯幾乎集中在 sidecar 進程中,這就完全可以做到讓使用 RPC 框架的業(yè)務方無感知地對之進行升級與維護。最終的結果是,業(yè)務與 RPC 框架可以做到獨立發(fā)展與升級,完全消除了之前胖 SDK 所導致的兩者相互制約發(fā)展的不利局面。這一解耦所帶來的好處是,使用 RPC 框架的業(yè)務團隊可以更加聚焦于業(yè)務開發(fā)本身。
Q:?Netpoll 的優(yōu)勢在哪?相比其他高性能網(wǎng)絡庫例如 Netty 還有什么不足?
A:?netpoll網(wǎng)絡庫相比于go本身的net標準庫更適合高并發(fā)場景;Netty有靈活的配置,如可以使用netty自帶的編解碼方式來也可以自己去編寫Encoder和Decoder類解決粘包問題。Netty使用transferTo方法實現(xiàn)零拷貝,減少了上下文切換與多余的數(shù)據(jù)拷貝,提高效率。