【上海大學計算機組成原理實驗報告】五、機器語言程序實驗

一、實驗目的

  1. 理解計算機執行程序的實際過程。

  2. 學習編制機器語言簡單程序的方法。

二、實驗原理

  1. 根據實驗指導書的相關內容,指令的形式化表示是指采用一種規范化的符號系統,以更清晰、精確地描述和表示指令的邏輯功能和操作步驟。

  2. 匯編是一種編程語言,用于將人可讀的符號化指令(匯編指令)翻譯成計算機可執行的機器指令。匯編過程依賴于一張符號對應表,將匯編指令映射到相應的機器指令的二進制數形式。這個過程使得編程更容易理解和進行邏輯思維。

三、實驗內容

實驗任務一:編寫并運行機器語言程序

R1中的數值左移n次送OUT,其中nR2中的數值。(指令碼從10開始)

(1)實驗步驟

  1. 注釋儀器,打開電源,手不要遠離電源開關,隨時準備關閉電源,注意各數碼管、發光管的穩定性,靜待10秒,確信儀器穩定、無焦糊味。
  2. 設計匯編指令:

在這里插入圖片描述

  1. 設置實驗箱進入EM模式,ADR1022,依次設置DB

  2. 設置實驗箱進入uPC模式。設置uPC=00PC=10;按NX三次,設R0=00,R1=01,R2=02,連續按下STEP鍵,觀察實驗結果。

  3. 記錄實驗結果。

(2)實驗現象
在這里插入圖片描述

OUTR1顯示04R2顯示00.

(3)實驗結論

通過一系列正確的設計,我們成功地完成了“將R1中的數值左移n次送OUT”操作功能的實現。

實驗任務二:編寫并運行機器語言程序

完成R3=R0×R1,結果送OUT。(指令碼從30開始)

(1)實驗步驟

  1. 設計匯編指令:

在這里插入圖片描述

  1. 按Reset鍵初始化系統,并設置實驗箱進入EM模式。ADR303D,依次設置DB

  2. 設置實驗箱進入uPC模式。設置uPC=00PC=30;按NX三次,設R0=10,R1=02,連續按下STEP鍵,觀察實驗結果。

  3. 記錄實驗結果,關閉實驗箱電源。

(2)實驗現象
在這里插入圖片描述

OUTA顯示40R2顯示00.

(3)實驗結論

通過一系列正確的設計,我們成功地完成了“R3=R0×R1后結果送OUT”操作功能的實現。

四、建議

  1. 在測試程序時,可以在每次執行下一步操作前事先確定理想情況下的結果,如實際操作與理想情況不符則當前操作出現了問題。

  2. 在程序實現之后,可以進一步考慮有沒有可以優化的地方,比如能夠通過改進循環來簡化程序結構。

五、體會

通過此次實驗,讓我初步學會了如何編制機器語言的簡單程序,也加深了我對計算機執行程序的實際過程的理解,鞏固了理論知識,為進行下一次實驗打下了扎實基礎。

六、思考題

建立“中文匯編指令”需要哪些條件?

  1. 符號定義:確定每個中文符號對應的操作或指令。

  2. 操作碼規范:設計規范的操作碼來用于表示不同的指令。

  3. 指令格式:指令的格式應該簡潔規范,易于理解和使用。

  4. 寄存器定義:定義寄存的中文名稱,以明確其用途。

  5. 尋址方式:確定如何用中文確定尋址方式,以便指明指令的操作對象。

  6. 工具支持:需要存在相應的軟件,能將中文匯編指令翻譯成機器可執行的指令。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/12964.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/12964.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/12964.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MM模塊學習二 (供應商,物料后臺相關配置)

公司代碼配置 新建條目(只是建了一個名字出來,后面很多表都是沒有得) 接下來定義公司代碼: 公司代碼復制完成(后續修改交給財務顧問去做) 復制工廠: 復制工廠完成: 修改復制過去的工…

Linux服務器lvm磁盤管理fdisk和df磁盤大小不同修改

服務器端由于硬盤是通過VCenter原來100G磁盤復制的虛擬機,復制完成后,原來100G的磁盤通過選擇 磁盤重新復制出150G的磁盤,開機后發現還是原來的100G的磁盤,通過fdisk -l 查看有個sdb是150G, 但是已經劃轉的lvm盤只有100G, 通過df查看也是原來的100G: pvs查看pv里也是10…

用c++實現快速排序、最大子段和問題

6.2.2 快速排序 【問題】快速排序(quick sort)的分治策略如下(圖6-5)。 (1)劃分:(選定一個記錄作為軸值,以軸值為基準將整個序列劃分為兩個子序列,軸值的位置在劃分的過程中確定,并且左側子序列的所有記錄…

26 分鐘驚訝世界,GPT-4o 引領未來人機交互

前言 原文鏈接:OpenAI最新模型——GPT-4o,實時語音視頻交互,未來人機交互近在眼前 - Kaiho小站 北京時間 5 月 14 日凌晨,OpenAI 發布新一代模型——GPT-4o,僅在 ChatGPT 面世 17 個月后,OpenAI 再次通過…

qt的udp通訊

QString mylocalip; const QList interfaces QNetworkInterface::allInterfaces(); foreach(QNetworkInterface ip, interfaces) { if (ip.humanReadableName() QStringLiteral(“以太網”)) { //if (ip.type() QNetworkInterface::Ethernet) { const QList iplist ip.addr…

【EasyX】快速入門——靜態圖形篇

1.基本說明 EasyX 是針對 C 的圖形庫,可以幫助 C/C 初學者快速上手圖形和游戲編程。 比如,可以基于 EasyX 圖形庫很快的用幾何圖形畫一個房子,或者一輛移動的小車,可以編寫俄羅斯方塊、貪吃蛇、黑白棋等小游戲,可以練…

Go 注釋生成 api文檔

在 Go 語言中,通常會使用 godoc 工具來從注釋中生成 API 文檔。godoc 是 Go 官方提供的文檔生成工具,它可以解析 Go 源代碼中的注釋,并生成在線的、可交互的文檔。 為了使用 godoc 生成 API 文檔,你需要遵循一些特定的注釋格式。…

使用VMware或VirtualBox安裝eNSP Pro并使用CRT連接設備

文章目錄 使用Oracle Virtual Box安裝eNSP Pro創建虛擬機配置網卡配置帶外管理網絡 使用VMware Workstation安裝eNSP Pro轉換文件格式及虛擬磁盤模式配置網卡創建虛擬機配置使用CRT連接管理設備 前一段時間是開放了eNSP Pro的賬號權限,但是在寫博客時,權…

2024OD機試卷-字符串分割(二) (java\python\c++)

題目:字符串分割(二) 題目描述 給定一個非空字符串S,其被N個‘-’分隔成N+1的子串,給定正整數K,要求除第一個子串外,其余的子串每K個字符組成新的子串,并用‘-’分隔。 對于新組成的每一個子串,如果它含有的小寫字母比大寫字母多,則將這個子串的所有 大寫字母轉換為小…

27.哀家要長腦子了!

目錄 1.316. 去除重復字母 - 力扣(LeetCode) 2. 1209. 刪除字符串中的所有相鄰重復項 II - 力扣(LeetCode 哎喲 煩死了 剛剛不小心退出又沒保存 又要寫一遍 煩死了 最近刷題不得勁啊 感覺這腦子沒長一點 1.316. 去除重復字母 - 力扣&am…

(實測驗證)【移遠EC800M-CN 】GNSS功能打開和關閉關閉步驟驗證

引言 本文章使用自研“超小體積TTL轉4GGPS集成模塊”進行實測驗證; 一、打開GNSS功能 步驟一、通過 ATQGPSCFG 配置 GNSS 參數 (1)該命令用于查詢和配置 GNSS 不同的設置,包括 NMEA 語句輸出端口、NMEA 語句的輸出類型等。 1.1…

NSSCTF | [SWPUCTF 2021 新生賽]easyupload2.0

先傳一個普通的一句話木馬試一試 GIF89a <?php eval($_POST[shell]);?> 可以看到回顯&#xff0c;不允許上傳php文件。 使用Burpsuite抓包只修改ContentType后發現也不能繞過&#xff0c;說明服務器使用了黑名單后綴限制&#xff0c;那么我們可以使用其他的后綴代替ph…

RPA的實施過程通常包括哪些步驟?

RPA&#xff08;Robotic Process Automation&#xff09;的實施過程通常涉及一系列詳細的步驟&#xff0c;旨在確保自動化項目的成功部署和運行。以下是RPA實施過程的一般步驟&#xff1a; ### 1. 需求分析與目標設定 實施RPA的第一步是進行需求分析&#xff0c;明確企業希望通…

電路板維修【四】

【開關電源輸出電壓偏低不穩&#xff0c;用示波器立馬鎖定故障范圍】&#xff1a;https://www.bilibili.com/video/BV1pf421D73K?vd_source3cc3c07b09206097d0d8b0aefdf07958 可以用示波器查看MOS的輸出波形來查看其是否損壞&#xff1a; 電源芯片的供電電壓來回跳變&#xf…

嵌入式C語言與人工智能融合開發高級教程:實現手勢識別系統

目錄 文章主題環境準備人工智能與嵌入式系統基礎代碼示例&#xff1a;實現手勢識別系統應用場景&#xff1a;智能家居與穿戴設備問題解決方案與優化 1. 文章主題 文章主題 本教程將詳細介紹如何在STM32嵌入式系統中使用C語言實現手勢識別系統&#xff0c;特別是如何在資源受…

基于卷積神經網絡CNN,使用二維卷積Conv2D實現MNIST數字識別的四種方法

前言 系列專欄&#xff1a;機器學習&#xff1a;高級應用與實踐【項目實戰100】【2024】?? 在本專欄中不僅包含一些適合初學者的最新機器學習項目&#xff0c;每個項目都處理一組不同的問題&#xff0c;包括監督和無監督學習、分類、回歸和聚類&#xff0c;而且涉及創建深度學…

ROS 2邊學邊練(48)-- 將URDF與robot_state_publisher一起使用

前言 本篇將完成一個行走的機器人&#xff0c;并以tf2消息的方式實時發布機器人狀態&#xff0c;以便我們在Rviz中同步查看。 首先&#xff0c;我們創建描述機器人裝配的URDF模型。接下來&#xff0c;我們編寫一個節點&#xff0c;用于模擬運動并發布JointState和位姿變換。然后…

C-函數的由淺入深

1.函數的定義 數據類型 函數名 &#xff08;【數據類型 形參名&#xff0c;數據類型 形參名&#xff0c; …】&#xff09; 2.函數的傳參 值傳遞 地址傳遞 全局變量 3.函數的調用 嵌套調用 遞歸 4.函數與數組 5.函數與指針 指針函數 函數指針 函數指針數組 函數的定義 #inclu…

醉了,面個功能測試,還問我Python裝飾器

Python 裝飾器是個強大的工具&#xff0c;可幫你生成整潔、可重用和可維護的代碼。某種意義上說&#xff0c;會不會用裝飾器是區分新手和老鳥的重要標志。如果你不熟悉裝飾器&#xff0c;你可以將它們視為將函數作為輸入并在不改變其主要用途的情況下擴展其功能的函數。裝飾器可…

dhcp(接口和全局地址池模式)

接口地址池和全局地址池 dhcp應用 1.全部開啟dhcp功能 2.ar5 0口接口地址池 1口全局地址池 3.ar6和ar7配置&#xff0c;查看能否自動獲取ip 左右不同兩個網絡&#xff0c;接口和全局地址池的區別 部分截圖 ar6 ar7 ar5