#6 函數(shù)(Part.1)隨機儲存器


先給我們的指令集增加一個內(nèi)存操作的指令

讀取的時參數(shù)1指向內(nèi)存地址,輸出地址占用結(jié)果地址
寫入的時候參數(shù)1指向寄存器/輸入輸出,參數(shù)2指向內(nèi)存地址

在指令集的基礎(chǔ)上完善電路
裝一個RAM,讀取輸出接入結(jié)果總線
RAM的控制端口按照指令集進行設(shè)計,用開關(guān)進行控制
并且在RAM進行讀取的時候打開寄存器的寫入開關(guān)
(算術(shù)控制線和內(nèi)存條件下的讀取控制線用OR門拼接后,接入寄存器的寫入激活接口)


接下來是代碼
ram_r是內(nèi)存讀取,ram_w是內(nèi)存寫入
i和j是參數(shù)1是立即數(shù)和參數(shù)2是立即數(shù)的意思
把輸入放到內(nèi)存,計數(shù)器加一,直到31
歸零,逐個輸出
很簡單的代碼
總延遲112 時鐘刻191 總用時21392


自定義匯編別名:
add:00000000(0)
input:00000111(7)
output:00000111(7)
ram_r:00010000(16)
ram_w:00010001(17)
equal:00100000(32)
less_than:00100010(34)
j:01000000(64)
i:10000000(128)
reg0-reg5:00000000-00000101(0-5)

標(biāo)簽:圖靈完備Turing Complete