LC-3 指令集注释规范
目錄
寫(xiě)在前面
LC-3指令集總覽
指令注釋規(guī)范
DR
SR
imm5
BaseR
offset6
PCoffset9
PCoffset11
trapvect8
n z p
+
總體解釋一下
寫(xiě)在前面
各位小萌新們,讓我們一起來(lái)學(xué)習(xí)計(jì)算機(jī)系統(tǒng)吧,了解計(jì)算機(jī)的底層實(shí)現(xiàn)。
在這里,我會(huì)先總體解釋一下指令的構(gòu)成及其含義還有里面的注釋是什么意思,然后下一期將會(huì)一條一條指令和大家解釋。
LC-3指令集總覽
指令注釋規(guī)范
DR
目的寄存器(destination register)。
SR
SR、SR1、SR2等等是指源寄存器(source register)。
imm5
5-bit的立即數(shù)(immediate value),它是補(bǔ)碼的形式。
BaseR
基址寄存器(Base Register),它和一個(gè)6-bit偏移相加產(chǎn)生Base+offset地址。
offset6
6-bit補(bǔ)碼,用于Base+offset尋址模式。
PCoffset9
9-bit補(bǔ)碼,用于PC+offset尋址模式。
PCoffset11
11-bit補(bǔ)碼,用于JSR指令計(jì)算子程序的入口地址。
trapvect8
8-bit無(wú)符號(hào)整數(shù),用于TRAP指令確定服務(wù)程序的入口地址,間接尋址模式,該地址的內(nèi)存單元存放了服務(wù)程序的入口地址。
n z p
條件碼,LC-3有三個(gè)位寄存器:N、Z和P,即負(fù)數(shù)(negative)、0(zero)和正數(shù)(positive),當(dāng)任意寄存器被寫(xiě)入時(shí),根據(jù)寫(xiě)入的是負(fù)數(shù)、0還是正數(shù)分別設(shè)置相應(yīng)的條件碼為1,其他為0。
+
指令的匯編語(yǔ)言形式右上角的+號(hào)表示該指令將改變條件碼。
總體解釋一下
一條指令會(huì)分成幾個(gè)部分,16位的二進(jìn)制機(jī)器語(yǔ)言的前四位是操作碼,它是表示這條指令是用來(lái)做什么的,剩下部分主要是操作數(shù),表示應(yīng)該對(duì)誰(shuí)進(jìn)行操作。
要分清這些指令誰(shuí)是誰(shuí)還要清楚它的尋址模式,它是規(guī)定如何去尋找操作數(shù)的位置的。LC-3一共支持5種尋址模式:立即數(shù)、寄存器和三種內(nèi)存尋址模式,即相對(duì)尋址(PC-relative)、間接尋址(indirect)和基址偏移(Base+offset)。
4個(gè)bit的操作碼字段可以定義16種指令,LC-3的指令集架構(gòu)定義了15條指令,其中的1101被預(yù)留下來(lái),沒(méi)有定義。
這些指令可以分成三種:運(yùn)算、搬數(shù)據(jù)和控制指令。
總結(jié)
以上是生活随笔為你收集整理的LC-3 指令集注释规范的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python计算排列组合
- 下一篇: JAVA 国际化基础知识(二)