實(shí)驗(yàn)簡(jiǎn)介:
本實(shí)驗(yàn)內(nèi)容屬于大學(xué)信息技術(shù)基礎(chǔ)實(shí)驗(yàn)中的計(jì)算機(jī)硬件技術(shù)實(shí)驗(yàn)中的存儲(chǔ)程序控制原理部分。這一原理就決定了人們使用計(jì)算機(jī)的主要方式:編寫(xiě)程序和運(yùn)行程序,它仍然是我們理解計(jì)算機(jī)系統(tǒng)功能與特征的基礎(chǔ)。
一、實(shí)驗(yàn)原理和相關(guān)知識(shí)點(diǎn)
1.存儲(chǔ)程序控制原理由美籍匈牙利科學(xué)家馮·諾依曼提出,所以又稱為馮·諾依曼結(jié)構(gòu)。
2.計(jì)算機(jī)由五大部件組成:控制器、運(yùn)算器、存儲(chǔ)器、輸入設(shè)備和輸出設(shè)備??刂破骱瓦\(yùn)算器合成中央處理器(CPU)。
3.計(jì)算機(jī)由程序控制,程序由指令序列構(gòu)成,指令以二進(jìn)制形式存儲(chǔ)在主存儲(chǔ)當(dāng)中。數(shù)據(jù)也以二進(jìn)制形式存儲(chǔ)在主存儲(chǔ)器當(dāng)中。
4.主存儲(chǔ)是一個(gè)連續(xù)的存儲(chǔ)單元,每個(gè)存儲(chǔ)單元存儲(chǔ)一個(gè)字節(jié),每個(gè)存儲(chǔ)單元都有一個(gè)編號(hào),這個(gè)編號(hào)就是地址,CPU通過(guò)地址尋找到相應(yīng)的存儲(chǔ)單元。
5.地址的寬度由地址線的寬度決定。地址線的寬度決定了CPU尋址空間的大小,地址線中的地址碼決定了主存儲(chǔ)器中那個(gè)單元的指令和數(shù)據(jù)被讀取或者寫(xiě)入。
6.指令由操作碼和操作數(shù)構(gòu)成,它們都是二進(jìn)制的,操作碼決定執(zhí)行何種操作,操作數(shù)決定什么數(shù)據(jù)或者哪里的數(shù)據(jù)參與操作。計(jì)算機(jī)能夠執(zhí)行的所有指令稱為指令系統(tǒng)。
7. CPU中的控制器中有指令計(jì)數(shù)器和指令寄存器。指令計(jì)數(shù)器存放著CPU即將執(zhí)行的指令的地址,CPU將該地址中的指令讀入指令寄存器,通過(guò)指令寄存器中譯碼器的翻譯變成電信號(hào),通過(guò)控制微電路(CU)控制運(yùn)算器和寄存器組進(jìn)行運(yùn)算。
8.運(yùn)算器負(fù)責(zé)算術(shù)運(yùn)算和邏輯運(yùn)算,通用寄存器組輔助暫存中間結(jié)果,狀態(tài)寄存器存儲(chǔ)控制狀態(tài),地址緩沖寄存器、數(shù)據(jù)緩沖寄存器、累加器、數(shù)據(jù)暫存器負(fù)責(zé)相應(yīng)數(shù)據(jù)的緩存。
9.指令被CPU逐條執(zhí)行。每隔一個(gè)時(shí)間周期,指令計(jì)數(shù)器自動(dòng)加一,CPU根據(jù)更新的地址找到下一條指令所在的單元,即下一個(gè)地址指向的存儲(chǔ)單元。
10.地址使用自然碼,算術(shù)運(yùn)算使用補(bǔ)碼,算術(shù)運(yùn)算和邏輯運(yùn)算的擁有各自的規(guī)則。
11.面向過(guò)程的結(jié)構(gòu)化思想,模塊化、標(biāo)準(zhǔn)化的思想,向下兼容的思想。
實(shí)驗(yàn)背景:
1.新時(shí)代大學(xué)計(jì)算機(jī)通識(shí)課程改革的需求,中醫(yī)藥領(lǐng)域?qū)I(yè)人才培養(yǎng)的需要。
信息化時(shí)代,南京中醫(yī)藥大學(xué)培養(yǎng)的中醫(yī)藥領(lǐng)域?qū)I(yè)人才需要良好的信息素養(yǎng)(Information Literacy),幫助他們?cè)谝院蟮膶W(xué)習(xí)和工作中發(fā)揮效能倍增的作用。
在人類創(chuàng)造的無(wú)數(shù)工具和機(jī)械中,大部分都是幫助人類從體力上解放自己并提高效率的,只有少數(shù)是幫助人們提高提升智力效用的工具,比如紙筆和計(jì)算機(jī)??梢援?huà)在紙上的神奇數(shù)學(xué)符號(hào),美輪美奐的書(shū)法和繪畫(huà),精確的工程圖樣等,人類甚至發(fā)明了五線譜將聲樂(lè)記錄下來(lái)。紙筆也許限制了人類記錄事務(wù)的表達(dá)方式,但是從來(lái)沒(méi)有限制人類的創(chuàng)造力。計(jì)算機(jī)也應(yīng)該如此,現(xiàn)代計(jì)算機(jī)在表現(xiàn)形式和處理能力上幾乎沒(méi)有限制,可是我們的大學(xué)生卻大都局限于簡(jiǎn)單的信息獲取和辦公軟件的使用,即便少數(shù)能夠掌握一些編程語(yǔ)言和編程工具的使用,也缺乏將計(jì)算機(jī)效能倍增作用應(yīng)用于自身專業(yè)領(lǐng)域內(nèi)的能力。所以,我們希望學(xué)生不僅僅能夠通過(guò)本實(shí)驗(yàn)掌握相關(guān)知識(shí),而且能夠體驗(yàn)一種思維模式:將思考過(guò)程和步驟用計(jì)算機(jī)的表達(dá)方式呈現(xiàn),并用計(jì)算機(jī)的執(zhí)行方式實(shí)現(xiàn);這種思維模式包括:分解、抽象、算法、泛化、迭代和調(diào)試。
大學(xué)信息技術(shù)基礎(chǔ)課程是大學(xué)通識(shí)課程的重要組成部分。針對(duì)學(xué)校中醫(yī)學(xué)科背景著重培養(yǎng)學(xué)生邏輯思維能力;對(duì)信息的理解、認(rèn)知和利用的能力;數(shù)據(jù)核心觀和數(shù)據(jù)科學(xué)方法論。
2. 技術(shù)性科普的困境,計(jì)算機(jī)行業(yè)科普的價(jià)值和效果
技術(shù)性科普比知識(shí)性科普難以符號(hào)化,技術(shù)性內(nèi)容邏輯性更強(qiáng),可視化困難,代入感有限。對(duì)于大部分大學(xué)通識(shí)課的受眾,信息技術(shù)更多是工具而不是科學(xué)和方法論。這是我們繼續(xù)改變的現(xiàn)狀。本實(shí)驗(yàn)介紹的正是計(jì)算機(jī)工作原理與算法邏輯的實(shí)現(xiàn)。
存儲(chǔ)程序控制原理即計(jì)算機(jī)工作原理是本課程理論知識(shí)教學(xué)的根本和基礎(chǔ)。盡管計(jì)算機(jī)發(fā)展日新月異,新技術(shù)、新概念層出不窮,可是自計(jì)算機(jī)誕生七十年來(lái),所有計(jì)算機(jī)的工作原理并未發(fā)生根本改變,理解其運(yùn)行方式是掌握計(jì)算機(jī)后續(xù)知識(shí)的基礎(chǔ)。
本實(shí)驗(yàn)發(fā)展自計(jì)算機(jī)組成原理課程的控制組合邏輯實(shí)驗(yàn)等多個(gè)專業(yè)課程實(shí)驗(yàn),參考了開(kāi)源項(xiàng)目:Scott CPU 架空架構(gòu),簡(jiǎn)化了專業(yè)課程的復(fù)雜概念,是一個(gè)全新設(shè)計(jì)的創(chuàng)新實(shí)驗(yàn)項(xiàng)目。包含CPU組合邏輯組成設(shè)計(jì)、基本邏輯單元組合邏輯設(shè)計(jì)、指令系統(tǒng)設(shè)計(jì)和指令運(yùn)行仿真四個(gè)部分,全面涵蓋存儲(chǔ)程序控制原理的所有主要相關(guān)知識(shí)點(diǎn)。
設(shè)計(jì)原則:
實(shí)驗(yàn)項(xiàng)目總體采用雙模塊多層次設(shè)計(jì),一邊是CPU與RAM組合邏輯,一邊是指令執(zhí)行;結(jié)合基礎(chǔ)理論知識(shí),以項(xiàng)目驅(qū)動(dòng)方式求解實(shí)際問(wèn)題,讓學(xué)生在實(shí)驗(yàn)過(guò)程中,不僅掌握計(jì)算機(jī)工作原理的理論知識(shí),還可以結(jié)合算法設(shè)計(jì)培養(yǎng)計(jì)算思維,充分發(fā)揮學(xué)生自主性。采用自主式、互動(dòng)式、迭代反饋式和問(wèn)題探索式等多種教學(xué)方法,實(shí)現(xiàn)以學(xué)生為中心的實(shí)驗(yàn)教學(xué)理念。
1.自主式學(xué)習(xí)教學(xué)方法
使用目的:學(xué)生通過(guò)自主學(xué)習(xí),掌握理論大綱要求的二進(jìn)制數(shù)、CPU結(jié)構(gòu)、指令和指令周期、程序結(jié)構(gòu)方面的學(xué)習(xí)內(nèi)容。通過(guò)全面系統(tǒng)的認(rèn)知環(huán)節(jié)引導(dǎo)學(xué)生有目的有方向的系統(tǒng)性學(xué)習(xí)。
實(shí)施過(guò)程:實(shí)驗(yàn)的認(rèn)知環(huán)節(jié)依據(jù)計(jì)算機(jī)組合邏輯劃分知識(shí)點(diǎn),并提供層次化的學(xué)習(xí)路徑。大大強(qiáng)化了學(xué)習(xí)的完整性和系統(tǒng)性。
實(shí)施效果:認(rèn)知實(shí)驗(yàn)設(shè)計(jì)由易到難,知識(shí)水平逐層提升,符合學(xué)生自主學(xué)習(xí)的學(xué)習(xí)規(guī)律。同時(shí),學(xué)生可以根據(jù)自己的知識(shí)水平自主選擇符合自身知識(shí)層次的實(shí)驗(yàn),充分發(fā)揮了學(xué)生的自主性。
2.互動(dòng)式教學(xué)方法:
使用目的:理解指令和邏輯單元之間的關(guān)聯(lián)關(guān)系。理解執(zhí)行效率和組合邏輯,指令集的關(guān)系。理解各個(gè)邏輯單元之間的關(guān)系。利用內(nèi)部SocctCPU模型,讓學(xué)生在設(shè)計(jì)過(guò)程中對(duì)不同參數(shù)進(jìn)行調(diào)整,考察對(duì)各個(gè)邏輯單元組合邏輯以及指令執(zhí)行效率的影響。充分體現(xiàn)過(guò)程分析的效果。
實(shí)施過(guò)程:例如:學(xué)生對(duì)指令寬度的位數(shù)設(shè)計(jì)可以影響通用寄存器的個(gè)數(shù),和協(xié)處理器的指令集大小,間接影響指令執(zhí)行的速度和效率。
實(shí)施效果:提高了學(xué)生綜合思考能力,培養(yǎng)了學(xué)生計(jì)算機(jī)工程學(xué)思想,在有限的資源下最大限度的發(fā)揮系統(tǒng)整體效果的思維方式。
3.迭代反饋式教學(xué)方法
使用目的:通過(guò)求解問(wèn)題的項(xiàng)目驅(qū)動(dòng)方式,在一個(gè)真實(shí)場(chǎng)景中使用計(jì)算機(jī)解決具體問(wèn)題,由于使用了迭代式的算法設(shè)計(jì)環(huán)節(jié)設(shè)計(jì),使得學(xué)生可以在反復(fù)實(shí)踐中尋找最優(yōu)解。
實(shí)施過(guò)程:算法設(shè)計(jì)到指令執(zhí)行的各個(gè)步驟都是可以迭代的,每個(gè)步驟都會(huì)疊加最終效果,學(xué)生在反復(fù)實(shí)踐中完成實(shí)驗(yàn),最終實(shí)現(xiàn)最優(yōu)的優(yōu)化設(shè)計(jì)。
實(shí)施效果:允許學(xué)生反復(fù)設(shè)計(jì)設(shè)計(jì),反復(fù)優(yōu)化,體現(xiàn)了學(xué)生的自主創(chuàng)新能力。
4.問(wèn)題探索式教學(xué)方法
使用目的:用抽象的理論知識(shí)實(shí)踐場(chǎng)景來(lái)解決具體的問(wèn)題,為了避免讓學(xué)生在理論知識(shí)中沉浸太久,我們以真實(shí)的案例驅(qū)動(dòng)程序設(shè)計(jì)的過(guò)程,從算法設(shè)計(jì)到最后實(shí)踐,讓學(xué)生掌握利用現(xiàn)有知識(shí)解決具體問(wèn)題的能力。
實(shí)施過(guò)程:學(xué)生需要對(duì)一個(gè)應(yīng)用題求解,并在場(chǎng)景中實(shí)現(xiàn)。
實(shí)施效果:充分體現(xiàn)了計(jì)算思維和數(shù)據(jù)思維。培養(yǎng)了學(xué)生的信息化素養(yǎng)。
實(shí)驗(yàn)?zāi)繕?biāo):
根據(jù)大學(xué)信息技術(shù)基礎(chǔ)教程大綱和關(guān)鍵知識(shí)點(diǎn),本實(shí)驗(yàn)考察程序存儲(chǔ)控制原理、計(jì)算機(jī)組成、CPU組合邏輯、指令與指令周期、算法設(shè)計(jì)與實(shí)現(xiàn)這幾方面的知識(shí)和應(yīng)用,重點(diǎn)考核學(xué)生理解能力、統(tǒng)籌規(guī)劃能力和計(jì)算思維。
通過(guò)本實(shí)驗(yàn),達(dá)到以下目的:
1. 加深對(duì)存儲(chǔ)程序控制原理的理解,
2. 加深對(duì)各個(gè)邏輯單元的理解,分三個(gè)層次理解計(jì)算機(jī)結(jié)構(gòu):第一層次是CPU、存儲(chǔ)器和總線的關(guān)系,第二層次是控制器、運(yùn)算器、協(xié)處理器和控制器的關(guān)系,第三層次是各個(gè)邏輯單元的組合邏輯和細(xì)節(jié)。
3. 掌握組合邏輯設(shè)計(jì)的方法
4. 加深指令和指令周期的理解,理解偽指令,微指令,指令執(zhí)行的關(guān)聯(lián)
5.掌握問(wèn)題到算法到偽指令實(shí)現(xiàn)的過(guò)程控制
6.掌握參數(shù)設(shè)置對(duì)于計(jì)算機(jī)效能的影響,提升綜合分析、統(tǒng)籌規(guī)劃的能力
實(shí)驗(yàn)要求:
1.掌握和理解程序存儲(chǔ)控制原理、計(jì)算機(jī)組成、CPU組合邏輯、指令與指令周期、算法設(shè)計(jì)與實(shí)現(xiàn)這幾方面的知識(shí)
2.通過(guò)迭代和調(diào)試完成算法設(shè)計(jì)
3.通過(guò)組裝和反饋實(shí)現(xiàn)結(jié)構(gòu)設(shè)計(jì)
4.培養(yǎng)計(jì)算思維,統(tǒng)籌規(guī)劃能力