无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

OVERTURE架構(gòu)指令集及匯編器

2023-07-16 00:02 作者:_cocca  | 我要投稿

概述

OVERTURE指令集是游戲圖靈完備(Turing Complete)中的第一款虛擬計(jì)算機(jī)所使用的指令集。這里將描述OVERTURE指令集,為實(shí)際的CPU設(shè)計(jì)做參考。該指令集共有16條指令、2條可選的拓展指令。

指令集描述

OVERTURE指令集如上圖所示,分為4部分,分別為:

- 立即數(shù)模式。低6位數(shù)據(jù)作為立即數(shù)寫入Reg0. 通過立即數(shù)可以寫入0~63的字面值。

- 計(jì)算模式。通過低3位選擇運(yùn)算類型。從Reg1和Reg2中讀取數(shù)值并將計(jì)算結(jié)果保存在Reg3. 可能的運(yùn)算有OR, NAND, NOR, AND, ADD, SUB.

- 復(fù)制模式。將源寄存器(Source Reg)的值復(fù)制到目的寄存器(Dest Reg)。

- 比較模式。也稱跳轉(zhuǎn)模式。讀取Reg3中的值并和指定的條件比較。條件滿足時(shí)跳轉(zhuǎn)到Reg0的位置。Reg0內(nèi)的值不能為0. (用作指示器)

寄存器

OVERTURE指令集架構(gòu)可以最多控制8個(gè)寄存器/設(shè)備。在圖靈完備游戲中,Reg0~Reg5為通用寄存器,Reg6為IO設(shè)備。

計(jì)算命令

| Type Code | Don't Care | Opcode | Operation |

| :-------: | :--------: | :----: | :-------: |

| ? ?01 ? ? | ? ?000 ? ? | ?000 ? | ? ?OR ? ? |

| ? ?01 ? ? | ? ?000 ? ? | ?001 ? | ? NAND ? ?|

| ? ?01 ? ? | ? ?000 ? ? | ?010 ? | ? ?NOR ? ?|

| ? ?01 ? ? | ? ?000 ? ? | ?011 ? | ? ?AND ? ?|

| ? ?01 ? ? | ? ?000 ? ? | ?100 ? | ? ?ADD ? ?|

| ? ?01 ? ? | ? ?000 ? ? | ?101 ? | ? ?SUB ? ?|


比較命令

| Type Code | Don't Care | Opcode | Operation |

| :-------: | :--------: | :----: | :-------: |

| ? ?11 ? ? | ? ?000 ? ? | ?000 ? | ? Never ? |

| ? ?11 ? ? | ? ?000 ? ? | ?001 ? | ? ?=0 ? ? |

| ? ?11 ? ? | ? ?000 ? ? | ?010 ? | ? ?<0 ? ? |

| ? ?11 ? ? | ? ?000 ? ? | ?011 ? | ? ?<=0 ? ?|

| ? ?11 ? ? | ? ?000 ? ? | ?100 ? | ?Always ? |

| ? ?11 ? ? | ? ?000 ? ? | ?101 ? | ? ?!=0 ? ?|

| ? ?11 ? ? | ? ?000 ? ? | ?110 ? | ? ?>=0 ? ?|

| ? ?11 ? ? | ? ?000 ? ? | ?111 ? | ? ?>0 ? ? |


拓展尋址空間

目前PC的尋址空間為255byte. 為了增加實(shí)用性,增加一條規(guī)定:

- 程序跳轉(zhuǎn)時(shí),如果Reg0中的值為0,那么選擇跳轉(zhuǎn)到Reg1(低8位)和Reg2(高8位)指示的位置。

通過增加地址位數(shù),可以獲得65kbyte的尋址空間。


拓展指令

這部分是在OVERTURE指令集基礎(chǔ)上拓展的指令,增加了對(duì)RAM的讀寫操作,使得整個(gè)系統(tǒng)更加實(shí)用。

- 計(jì)算模式下的內(nèi)存指令。把Reg3處的值存儲(chǔ)在RAM中Reg0所指示的位置?;蛘甙裄eg0所指示的位置的RAM值讀取到Reg3處。

| Type Code | Don't Care | Opcode | Operation ?|

| :-------: | :--------: | :----: | :--------: |

| ? ?01 ? ? | ? ?000 ? ? | ?110 ? | Store Word |

| ? ?01 ? ? | ? ?000 ? ? | ?111 ? | Load Word ?|

- 如果Reg0中的值為0,那么選擇Reg1(低8位)和Reg2(高8位)作為RAM的地址。


匯編器




OVERTURE架構(gòu)指令集及匯編器的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
淮北市| 太保市| 比如县| 嘉善县| 日照市| 湟中县| 黎平县| 遵义县| 德格县| 龙川县| 巨野县| 玉环县| 锡林浩特市| 大丰市| 望都县| 邯郸市| 宝鸡市| 广宁县| 永修县| 东光县| 林周县| 通许县| 洪洞县| 金阳县| 油尖旺区| 资兴市| 许昌市| 托克托县| 周至县| 偃师市| 石阡县| 洪泽县| 灵宝市| 梁平县| 通辽市| 阿拉善盟| 绍兴市| 仙游县| 宁南县| 乐昌市| 吉木乃县|