0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于使用PERSEUS-3計(jì)算機(jī)自制機(jī)器語言編程

lhl545545 ? 來源:電路城 ? 作者:電路城 ? 2021-05-01 10:03 ? 次閱讀

2007年,我開發(fā)了一種名為PERSEUS-3的計(jì)算機(jī),以克服1980年自制的機(jī)器語言計(jì)算機(jī)遭受的挫折。其功能如下。

(1)可以在沒有PC的情況下用機(jī)器語言編程。

(2)可以手動(dòng)執(zhí)行單條指令,并在此時(shí)顯示執(zhí)行地址。

(3)我自己的微型翻譯語言已開發(fā)到這臺計(jì)算機(jī)上。

(4)最初,我使用PC作為操作字符終端,后來我開發(fā)了一個(gè)自制終端并使用了它。

(5)后來,此計(jì)算機(jī)的概念成為我的#6502獨(dú)立計(jì)算機(jī)項(xiàng)目的PERSEUS-7計(jì)算機(jī)的基礎(chǔ)。

1.硬件配置 圖1顯示了硬件配置。CPU執(zhí)行指令時(shí),CPU會訪問存儲設(shè)備和外圍設(shè)備。編程時(shí),CPU通過直接內(nèi)存訪問(DMA)電路與總線分開,并且面板上的開關(guān)和LED直接連接到內(nèi)存設(shè)備。

2. CPU 我之所以選擇摩托羅拉的MC6802作為該計(jì)算機(jī)的CPU,是因?yàn)槲以?980年對該計(jì)算機(jī)進(jìn)行了機(jī)器語言開發(fā)經(jīng)驗(yàn),并且易于制作DMA電路。MC6802具有與流行的MC6800相同的指令,但是在暫停狀態(tài)下,地址總線不會變?yōu)楦咦钁B(tài),而是繼續(xù)輸出下一個(gè)可執(zhí)行地址。這對于常規(guī)的DMA電路設(shè)計(jì)是不方便的,但是它適合在LED上顯示運(yùn)行地址。

3.記憶 存儲設(shè)備是一個(gè)16 k位SRAM(HM6116LP-3)和一個(gè)64 k位SRAM(6264A-10L)??偞鎯θ萘繛?0 k字節(jié)。這兩款設(shè)備均由3.6 V,70 mA h NiMH電池備份。電池充滿a電。HM6116的2 k字節(jié)區(qū)域(包括系統(tǒng)向量地址)具有寫掩碼開關(guān)。解釋器已安裝到該區(qū)域。使寫保護(hù)開關(guān)可寫,然后輸入程序。然后將寫保護(hù)開關(guān)設(shè)置為可禁用狀態(tài),然后您將運(yùn)行該程序。這樣,如果程序失控,程序?qū)⒉粫袛唷?/p>

4.面板開關(guān)和LED 在這臺計(jì)算機(jī)上,使用面板上的開關(guān)輸入程序。通過三態(tài)緩沖器(74HC244)將十六個(gè)地址開關(guān)連接到地址總線。八個(gè)數(shù)據(jù)開關(guān)也通過三態(tài)緩沖器(74HC244)連接到數(shù)據(jù)總線。DMA電路控制3狀態(tài)緩沖器。在串行接口中,發(fā)送/接收信號上有LED,因此您可以直接識別通信狀態(tài)。并行接口的一個(gè)位還配備了一個(gè)開關(guān)和一個(gè)LED,可讓您輕松了解接口的操作。

5.按照指令一一調(diào)試 當(dāng)面板上的RUN / HALT開關(guān)置于停止側(cè)時(shí),CPU的HALT輸入信號變?yōu)榈碗娖?,CPU停止運(yùn)行。地址LED指向已停止指令的下一個(gè)執(zhí)行地址。存儲器地址總線和數(shù)據(jù)總線通過DMA電路連接到開關(guān)。數(shù)據(jù)顯示LED顯示地址開關(guān)指向的地址的存儲數(shù)據(jù)值。現(xiàn)在,當(dāng)按下寫開關(guān)時(shí),數(shù)據(jù)開關(guān)的值將被寫入存儲器,并且LED顯示屏將變?yōu)閷懼怠?按下步驟開關(guān),CPU將執(zhí)行一條指令并停止。在地址LED顯示屏上可以看到程序的正確進(jìn)度。當(dāng)開關(guān)設(shè)置為RUN側(cè)時(shí),CPU將從停止位置開始連續(xù)執(zhí)行。

6.周邊設(shè)備 該計(jì)算機(jī)具有一個(gè)RS-232C串行接口和一個(gè)8位并行輸入/輸出接口。作為串行接口,使用了異步通信接口適配器(ACIA)MC6850(HD6350 Hitachi)。并行接口配置有標(biāo)準(zhǔn)邏輯74LS374、74HCT374。該計(jì)算機(jī)還具有模擬輸入/輸出接口。使用8位A / D轉(zhuǎn)換器AD7820)作為模擬輸入,使用8位D / A轉(zhuǎn)換器(AD558JN)作為模擬輸出。動(dòng)態(tài)范圍為0v至2.5V。這是模擬信號處理的實(shí)驗(yàn)。

7.建立 筆記本計(jì)算機(jī)使用30厘米x 30厘米x 9厘米的鋼制外殼,但面板由鋁制成。該外殼用于制作自制的音頻放大器。使用變壓器和穩(wěn)壓器IC 7805的5V,1A電源安裝在機(jī)柜的背面。交流電源輸入為100V。通用板上的接線是繞線。

8.微小的口譯語言 我制作了名為Computation Interpreter -1(CI-1)的微小的16位整數(shù)解釋器語言。RS232C串行終端可以對該解釋器進(jìn)行編程和輸出。變量是‘A’到‘Z’的26個(gè)變量。運(yùn)算符只是四個(gè)算術(shù)運(yùn)算。數(shù)學(xué)表達(dá)式的表示法是反向波蘭表示法(RPN)。提供了條件決策語句和跳轉(zhuǎn)語句。我還提供了直接訪問參數(shù)指定的內(nèi)存空間的函數(shù)。這使我可以描述一個(gè)數(shù)組。該語言還包括行編輯器。如果某行沒有行號,則直接執(zhí)行。如果一行具有行號,則會將其添加到程序中。解釋器是用機(jī)器語言編寫的,并在此計(jì)算機(jī)上進(jìn)行手工組裝和調(diào)試。程序大小為1.7 k字節(jié)。

9.結(jié)果 我能夠制造一臺6802機(jī)器語言計(jì)算機(jī)和一個(gè)微型解釋器。1980年,當(dāng)我自己建造一臺這樣的計(jì)算機(jī)時(shí),調(diào)試程序很困難,因?yàn)闆]有地址LED。相比之下,這臺計(jì)算機(jī)PERSEUS-3具有LED指示程序的手動(dòng)進(jìn)度,并使調(diào)試機(jī)器語言變得實(shí)用。 該計(jì)算機(jī)PERSEUS-3成為仿真器,用于在2015年開發(fā)用于老式無線電數(shù)字顯示器的嵌入式后續(xù)計(jì)算機(jī)PERSEUS-4,并在2018年開發(fā)用于RS232C串行終端的嵌入式計(jì)算機(jī)PERSEUS-5
責(zé)任編輯:pj

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    10804

    瀏覽量

    210829
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7360

    瀏覽量

    87632
  • 語言編程
    +關(guān)注

    關(guān)注

    0

    文章

    23

    瀏覽量

    9882
收藏 人收藏

    評論

    相關(guān)推薦

    計(jì)算機(jī)語言概述

    計(jì)算機(jī)語言概述 在計(jì)算機(jī)技術(shù)發(fā)展過程中,出現(xiàn)過各種各樣的程序設(shè)計(jì)語言。從程序設(shè)計(jì)語言發(fā)展過程來看,可分為機(jī)器語言、匯
    發(fā)表于 12-06 00:17

    匯編語言機(jī)器語言!

    機(jī)器語言計(jì)算機(jī)直接認(rèn)識的語言,在電路中有高低電平表示,在邏輯中用0和1表示(0表示低或者開關(guān)的斷開,1表示高或者開關(guān)的閉合)機(jī)器語言是最早的機(jī)器
    發(fā)表于 03-13 17:22

    計(jì)算機(jī)編程 精選資料分享

    其實(shí)我感覺計(jì)算機(jī)編程有兩個(gè)坎(我就經(jīng)歷這么多):一個(gè)是入門,另一個(gè)是應(yīng)用。 對于新手,那些語句仿佛是一大堆無意義的字母,看上去亂七八糟的。其實(shí)計(jì)算機(jī)編程
    發(fā)表于 07-15 06:09

    計(jì)算機(jī)組成原理 精選資料分享

    計(jì)算機(jī)組成原理第一章 計(jì)算機(jī)系統(tǒng)概述1.1 計(jì)算機(jī)系統(tǒng)簡介計(jì)算機(jī)系統(tǒng):硬件、軟件軟件:系統(tǒng)軟件、應(yīng)用軟件計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)(由高到低):高
    發(fā)表于 07-23 06:15

    計(jì)算機(jī)組成期末復(fù)習(xí) 精選資料分享

    機(jī)D.計(jì)算機(jī)可實(shí)現(xiàn)高速運(yùn)算(c)2、計(jì)算機(jī)硬件能直接執(zhí)行的只能是下面哪項(xiàng)。A.符號語言 B.匯編語言C.機(jī)器語言 D.
    發(fā)表于 07-26 07:14

    機(jī)器語言是什么_機(jī)器語言指令大全

    本文開始介紹看機(jī)器語言是什么或概念,其次介紹了機(jī)器語言缺點(diǎn),最后介紹了機(jī)器語言指令概述及指令大全。
    的頭像 發(fā)表于 04-16 10:08 ?7.5w次閱讀
    <b class='flag-5'>機(jī)器語言</b>是什么_<b class='flag-5'>機(jī)器語言</b>指令大全

    面向機(jī)器語言有哪些

    本文開始介紹了機(jī)器語言原理,其次介紹了面向機(jī)器語言的概念與分類,最后介紹了機(jī)器語言的發(fā)展。
    的頭像 發(fā)表于 04-16 10:29 ?1.1w次閱讀
    面向<b class='flag-5'>機(jī)器語言</b>有哪些

    計(jì)算機(jī)編程語言的發(fā)展趨勢分析

    最開始的時(shí)候,每種計(jì)算機(jī)都有自己的機(jī)器指令。例如,某種型號的計(jì)算機(jī)用8位二進(jìn)制信息10001010表示加法指令,等等。所以用這種機(jī)器語言進(jìn)行程序設(shè)計(jì)是很累的工作,而且代碼難以閱讀和理解
    發(fā)表于 09-26 09:40 ?5197次閱讀

    計(jì)算機(jī)語言的分類

    本視頻主要詳細(xì)介紹了計(jì)算機(jī)語言的分類,分別有機(jī)器語言、匯編語言、高級語言等。
    的頭像 發(fā)表于 12-27 16:04 ?2.6w次閱讀
    <b class='flag-5'>計(jì)算機(jī)語言</b>的分類

    計(jì)算機(jī)語言的發(fā)展過程

    本視頻主要詳細(xì)介紹了計(jì)算機(jī)語言的發(fā)展過程,分別是機(jī)器語言、匯編語言、高級語言。
    的頭像 發(fā)表于 12-28 16:46 ?3.5w次閱讀

    計(jì)算機(jī)編程語言發(fā)展的三個(gè)重要階段你都知道嗎?

    第一代計(jì)算機(jī)語言稱為機(jī)器語言。機(jī)器語言就是0/1代碼。計(jì)算機(jī)只能識別0和1。在計(jì)算機(jī)內(nèi)部,無論是一部電影還是一首歌曲或是一張圖片,最終保存的
    發(fā)表于 02-04 11:46 ?2w次閱讀
    <b class='flag-5'>計(jì)算機(jī)</b><b class='flag-5'>編程</b><b class='flag-5'>語言</b>發(fā)展的三個(gè)重要階段你都知道嗎?

    計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)到底是怎么樣的

    通常由用戶用高級語言編寫程序,然后講它和數(shù)據(jù)一起送入計(jì)算機(jī)內(nèi),再由計(jì)算機(jī)將其翻譯成機(jī)器能識別的機(jī)器語言程序,
    的頭像 發(fā)表于 12-21 11:21 ?4355次閱讀

    計(jì)算機(jī)機(jī)器語言和匯編語言與高級語言的詳細(xì)資料介紹

    計(jì)算機(jī)語言通常是一個(gè)能完整、準(zhǔn)確和規(guī)則地表達(dá)人們的意圖,并用以指揮或控制計(jì)算機(jī)工作的“符號系統(tǒng)”。計(jì)算機(jī)語言通常分為三類:即機(jī)器語言、匯編語言
    的頭像 發(fā)表于 02-06 16:11 ?5703次閱讀

    計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)詳細(xì)說明

    通常由用戶用高級語言編寫程序,然后講它和數(shù)據(jù)一起送入計(jì)算機(jī)內(nèi),再由計(jì)算機(jī)將其翻譯成機(jī)器能識別的機(jī)器語言程序,
    的頭像 發(fā)表于 02-22 16:44 ?6863次閱讀

    計(jì)算機(jī)中的存儲單位你清楚嗎

    機(jī)器語言是一種計(jì)算機(jī)語言,它是計(jì)算機(jī)唯一可以讀懂的語言,由1和0組成。
    發(fā)表于 03-27 10:54 ?2977次閱讀