C# Winform 计算机原理模型机的设计——带超前进位加法器
生活随笔
收集整理的這篇文章主要介紹了
C# Winform 计算机原理模型机的设计——带超前进位加法器
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
前言
- 此刻距離我上一篇博客已有一年多,這一年來(lái)學(xué)業(yè)繁忙,少有顧及,但這個(gè)博客我會(huì)一直寫(xiě)下去的。盡管現(xiàn)在的我還是菜雞
- 今天要寫(xiě)的是關(guān)于我大二時(shí)候?qū)W習(xí)計(jì)算機(jī)原理的時(shí)候,用C#和C# Winform做的一個(gè)簡(jiǎn)單的帶超前進(jìn)位加法器的模型機(jī)。
- 其實(shí)現(xiàn)在我對(duì)計(jì)算機(jī)原理的認(rèn)識(shí),遠(yuǎn)超過(guò)當(dāng)初,如果現(xiàn)在讓我再做一個(gè),我一定會(huì)做好內(nèi)存管理,并且設(shè)計(jì)多級(jí)流水和微指令序列,這樣更能夠多方面的展現(xiàn)計(jì)算機(jī)的巧妙之處。
模型機(jī)設(shè)計(jì)
概述
- 本項(xiàng)目是在VisualStudio2015上使用C#Winform進(jìn)行開(kāi)發(fā)的,通過(guò)代碼和窗體控件及相應(yīng)的事件進(jìn)行編寫(xiě),能夠模擬編譯處理輸入的CPU指令并執(zhí)行,在執(zhí)行過(guò)程中,可以在模型及主界面中看到程序計(jì)數(shù)器、指令寄存器、狀態(tài)寄存器、地址寄存器、數(shù)據(jù)寄存器、總線的實(shí)時(shí)數(shù)據(jù),通過(guò)可視化界面也可以區(qū)分訪存指令、非訪存指令和跳轉(zhuǎn)指令。
- 程序正常執(zhí)行完畢后,在外部文本文件中程序會(huì)已寫(xiě)好的一份包含模型機(jī)運(yùn)行的每個(gè)周期主要寄存器的值和最終數(shù)據(jù)存儲(chǔ)器的值的文本文件。
功能
- 輸入CPU指令:讀取程序外部指令文件或者在模型機(jī)主界面內(nèi)輸入需要執(zhí)行的CPU指令。
- 編譯指令:在模型機(jī)內(nèi)部解析RichtextBox內(nèi)的CPU指令。
- 執(zhí)行指令:
- 單周期執(zhí)行CPU指令,執(zhí)行完后暫停。
- 自律執(zhí)行CPU指令,模型機(jī)按一定的速度自動(dòng)執(zhí)行所有指令。
- 每個(gè)周期執(zhí)行完畢后對(duì)相關(guān)數(shù)據(jù)值進(jìn)行修改,同時(shí)在執(zhí)行過(guò)程圖中顯示相應(yīng)位置的數(shù)據(jù)。
- 保存數(shù)據(jù):每個(gè)指令周期結(jié)束后對(duì)外部txt文件進(jìn)行寫(xiě)入操作,將主要寄存器值有規(guī)律的保存在文本文件中,所有指令執(zhí)行完畢后保存最終的數(shù)據(jù)存儲(chǔ)器內(nèi)的數(shù)據(jù)。
總體結(jié)構(gòu)
模型機(jī)界面
項(xiàng)目資源鏈接
- https://download.csdn.net/download/Carizy/34160267?spm=1001.2014.3001.5501
- 項(xiàng)目工程文件我將會(huì)上傳到自己的Gitub賬號(hào)和Gitee賬號(hào)上。(倉(cāng)庫(kù)建立后我會(huì)將鏈接分享在此處)
- 希望這些能夠幫助到各位大佬的學(xué)習(xí)和設(shè)計(jì),若有相關(guān)問(wèn)題歡迎私信我。雖然我可能不登錄看私信_
蒟蒻一只,歡迎指正。
總結(jié)
以上是生活随笔為你收集整理的C# Winform 计算机原理模型机的设计——带超前进位加法器的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 编译安装php时遇到virtual me
- 下一篇: C#《原CSharp》第三回 万文疑谋生