在數(shù)理邏輯和理論計算機科學中,寄存器機是以類似于使用圖靈機的方式使用的一類抽象機。所有模型都是圖靈等價的。寄存器機得名于它有一個或多個"寄存器" -- 替代了圖靈機的磁帶和磁頭,這個模型使用了多個唯一尋址的寄存器,每個都持有一個單一正整數(shù)。
圖靈機
停機問題
沒有標準術語;每個作者都以自己的助記符或符號下定義。
寄存器機構(gòu)成如下:
1 無界數(shù)目的標定的、離散的、在寬度(容量)上無界的寄存器:
有限(在某些模型中無限)的寄存器集合 '0 ... '',每個都有無限寬度并持有一個單一非負整數(shù) (0, 1, 2, ...)。寄存器可以做它們自己的算術,或者可以有也可以沒有一個或多個做算術的特殊寄存器,比如"累加器"或"地址寄存器"。
2 計數(shù)的籌碼或標碼 -- 離散的、不可細分的唯一一類只適合這個模型的物件或標記。
在最精簡的計數(shù)器機模型中,對每個算術指令只有一個物件/標記被要么增加到要么減少自它的位置/磁帶。在某些計數(shù)器機模型(比如 Melzak (1961), Minsky (1961))和多數(shù) RAM 與 RASP 模型中,在"加法"、"減法"、"乘法"和"除法"這樣的指令中多于一個物件/標記可以增加或減少。某些模型有控制運算比如"復制"(也叫做"移動"、"裝載"、"存儲")一個動作就從寄存器到寄存器移動一堆物件/標記。
3 (非常)有限的指令集:
指令可被分類 -- 3.1 算術和 3.2 控制。對指令集有一種限制: 一個指令集必須允許這個模型是圖靈等價的,就是說它必須能夠計算任何偏遞歸函數(shù):
3.1 算術
算術指令可以運算于所有寄存器上或只在特殊的寄存器上(比如累加器)。他們通常被按如下集合來選擇(但例外大量存在):
*計數(shù)器機: { 增加 (r), 減少 (r), 清零 (r) }
*精簡 RAM, RASP: { 增加 (r), 減少 (r), 清零 (r), 裝載立即常量 k, 加 (r1,r2), 真減 (r1,r2), 增加累加器, 減少累加器, 清除累加器, 加寄存器 r 的內(nèi)容到累加器, 從累加器真減寄存器 r 的內(nèi)容 }
*擴充 RAM, RASP: 所有精簡指令加上: { 乘法, 除法, 各種布爾逐位運算 (左移位, 位測試, 等等)}
3.2 控制:
計數(shù)器機模型: 可選的 { 復制 (r1,r2) }
RAM 和 RASP 模型: 多數(shù)都有 { 復制 (r1,r2) }, 或 { 裝載累加器從 r, 存儲累加器到 r, 裝載立即常量到累加器 }
所有模型: 至少一個跟隨寄存器測試的條件"跳轉(zhuǎn)"(分支,goto),比如 { 零時跳轉(zhuǎn), 非零時跳轉(zhuǎn)(就是,正時跳轉(zhuǎn)), 等時跳轉(zhuǎn), 非等時跳轉(zhuǎn) }
所有模型可選的: { 無條件程序跳轉(zhuǎn) (goto) }
3.3 寄存器尋址方法:
計數(shù)器機: 沒有間接尋址,在高度原子化的模型中可能有立即操作數(shù)
RAM 和 RASP: 可用間接尋址,典型的立即操作數(shù)
3.4 輸入輸出:
所有模型: 可選的
4 狀態(tài)寄存器:
一個特殊的指令寄存器 "IR",有限并獨立于上述寄存器,它存儲當前的要執(zhí)行的指令和它在指令 TABLE(表格) 中的地址;這個寄存器和它的 TABLE 位于有限狀態(tài)機內(nèi)。
注釋 #1: IR 是對于所有模型都是禁區(qū)。在 RAM 和 RASP 的情況下,為了確定一個寄存器的地址,模型可以選擇要么 (i)在直接尋址的情況下 -- 地址通過 TABLE 指定而臨時位于 IR 中,或 (ii) 在間接尋址的情況下 -- 寄存器的內(nèi)容由 IR 的指令指定。
注釋 #2: IR 不是 RASP (或常規(guī)計算機)的程序計數(shù)器(PC)。PC 只是類似累加器的另一個寄存器,只專門持有 RASP 的當前基于寄存器的指令的編號。所以 RASP 有兩個"指令/程序"寄存器 -- (i) IR (有限狀態(tài)自動機的指令寄存器) 和 (ii) PC (程序計數(shù)器) 用于位于寄存器中的程序。(同樣于專門的 PC 寄存器,RASP 可以有專門的寄存器如"程序-指令寄存器"(用名字如 "PIR, "IR", "PR" 等)
5 通常按順序的標定指令的列表:
指令的有限列表 '1 ... ''。在計數(shù)器機、隨機存取機(RAM)和指針機的情況下,指令存儲于有限狀態(tài)機的 TABLE 中;因此這些模型是哈佛結(jié)構(gòu)的例子。在 RASP 的情況下,程序存儲在寄存器中;所以它是馮·諾伊曼結(jié)構(gòu)的例子。
通常像計算機程序,指令被按順序列出;除非成功跳轉(zhuǎn)否則缺省順序是眼數(shù)值次序。有個例外是算盤(Lambek (1961), Minksy (1961))計數(shù)器機模型 -- 所有指令都有至少一個"下一個"指令標識符 "z",而條件分支有兩個。(算盤模型組合了兩個指令 JZ 接著 DEC):
比如 { INC ( r, z ), JZDEC ( r, ztrue, zfalse ) }.
寄存器是cpu的一部分,是計算機中速度最快的存儲器,分為 通用寄存器、專用寄存器、段寄存器、其他寄存器,每個寄存器存儲一種類型的變量,各司其職,這樣說來,又分為累加器、源變址寄...
指令寄存器的作用: 通常都用來意指由一個指令之輸出或輸入可以直接索引到的暫存器群組。 寄存器是中央處理器內(nèi)的組成部份。寄存器是有限存貯容量的高速存貯部件,它們可用來暫存指令、...
是一類應用很廣的時序邏輯電路,通過本知識點的學習理解移位寄存器的概念和工作原理,學會通過功能表來分析模塊的邏輯功能
格式:pdf
大?。?span id="vgensqr" class="single-tag-height">43KB
頁數(shù): 2頁
評分: 4.7
通過寄存器控制 led燈。 cpu通過 GPIO(通用輸入輸出 )控制標準的輸入輸出。 cpu 一共有 150 根針與 gpio 連接。Gpio 可以定義為輸入,也可以定義為輸出。 輸入即拉高電平。輸出即檢測電平高低。 GPIO 內(nèi)有很多寄存器。并且映射到 0~4G 的尋址 空間中的某個固定的地址。 Gpio 中的寄存器管理 GPIO 中的引腳,管理到每一根引腳。 引腳很多。所以,分組管理,其中 port b 控制寄存器即 B 組寄存器共管理 11個引腳。共用 了 4 個寄存器來對這 11個引腳的管理 。 B 組控制寄存器 寄存器名 映射的地址 讀寫狀態(tài) 功能說明 上電后的初始值 GPBCON 控制 0x56000010 讀 /寫 此寄存器的 10~11比特位 即控制 gpio 的第 5 引腳。 這個寄存器主要是用于 控制各個引腳的功能: 0 = input 1 = output 0x0
格式:pdf
大?。?span id="l3ym7fb" class="single-tag-height">43KB
頁數(shù): 未知
評分: 4.4
為了進一步提高可逆時序邏輯電路設計方法的通用性和改善可逆電路性能指標,以可逆主從D觸發(fā)器為基本單元,通過將時鐘信號及垃圾位信號級聯(lián)再利用,提出了一種可逆串行移位寄存器優(yōu)化設計方案。在此基礎上,通過目標函數(shù)構(gòu)造及變換構(gòu)建帶有移位控制的單元模塊,設計了滿足串行輸入串/并行輸出功能的n位可逆雙向移位寄存器。設計結(jié)果表明,采用方法所設計的可逆移位寄存器具有較優(yōu)的性能指標,且對于雙向移位寄存器綜合具有較好的通用性。
作為用于形式邏輯和理論計算機科學中的計算模型,計數(shù)器機是寄存器機模型的最原始的子類。
它只由如下組成:(i)一序列的一個或多個(唯一性)命名的"無界"寄存器(只包含一個單一無界正整數(shù)的寄存器),(ii)假如到或減去自寄存器的叫做"計數(shù)器"的物件,(iii)讓計算機(人或機器)服從的(通常順序的)算術和控制指令的列表。
對于給定的計數(shù)器機模型,指令集是非常微小的,只有從 1 到 6 或 7 指令。所有模型都包含一些算術運算和至少一個"條件表達式"(IF-THEN-ELSE)。三個基本模型,每個都使用了三個指令,從下列指令中劃分出來(簡寫助記符是任意的):
停機(HALT)指令可以包含也可以不包含在模型中。
三個計數(shù)器機的計算能力是等價的 -- 一個模型的指令可以從其他模型的指令得出。都等價于圖靈機的計算能力(但只有用哥德爾數(shù)來編碼在計算器中的數(shù)據(jù),否則它們的能力等價于原始遞歸函數(shù))。由于它們的一元處理方式,計數(shù)器典型的要比圖靈機慢一個因子,它是在相比較的圖靈機使用的空間的指數(shù)。
計數(shù)器機模型還有一些其他的名字: Shepherdson-Sturgis 機, Minsky 機, 程序機, 算盤機 , Lambek 機, 后繼機 等等。詳情參見計數(shù)器機模型。