3K+ 次瀏覽
在這裡,我們將瞭解如何使用 8085 實現數學函式。問題陳述編寫一個程式來實現以下函式 (a*b) + (c*d) 並將結果儲存在記憶體位置 8204 和 8205 中。使用子程式執行乘法。這裡 a、b、c 和 d 數字分別儲存在記憶體位置 8200H、8201H、8202H 和 8203 中。討論8085 中沒有乘法指令。因此,我們必須使用子程式來執行乘法。在這個子程式中,它從 HL 對指向的記憶體中獲取數字,並將結果返回到 DE 暫存器對。在將兩個部分相乘後,儲存中間結果,... 閱讀更多
551 次瀏覽
在這裡,我們將瞭解如何使用 8085 向 7 位 ASCII 字串新增偶校驗。問題陳述編寫一個程式向 7 位 ASCII 字串新增偶校驗。字串的長度在記憶體位置 8040 H 中,字串本身從記憶體位置 8041 H 開始。將偶校驗置於每個字元的最高有效位。討論8085 具有奇偶校驗標誌。該標誌將用於檢查併為每個 ASCII 字元分配奇偶校驗。首先,我們將透過將數字與 7FH 進行掩碼來清除最高有效位。然後使用 OR 指令,因為這... 閱讀更多
1K+ 次瀏覽
在這裡,我們將瞭解如何使用 8085 新增十個打包的 BCD 數字。問題陳述一組十個打包的 BCD 數字儲存在從 8040H 到 8049H 開始的記憶體位置中。編寫一個帶有子程式的程式,以 BCD 方式新增這些數字。如果生成進位,則將其儲存到暫存器 B 中,並將其調整為 BCD。最終總和小於 9999BCD。將總和儲存在位置 8060H 和 8061H 中。編寫第二個子程式來解包儲存在暫存器 A 和 B 中的 BCD 總和,並將它們儲存在從 8062H 開始的 OutputBuffer 記憶體中。最高有效位... 閱讀更多
149 次瀏覽
在這裡,我們將瞭解如何使用 8085 查詢兩個二進位制模式的位差異。問題陳述兩個二進位制模式儲存在位置 8030H 和 8031H 中。將它們載入到暫存器 A 和 B 中。找出位不同的位置,並將這些位置號放在從 8050H 開始的位置上。(在 A 中為 0 且 B 中為 1 的位置,位不同)討論要解決此問題,我們將數字輸入 A 和 B。然後將 C 初始化為計數器 08H,暫存器 L 將跟蹤位位置,其中 A... 閱讀更多
22K+ 次瀏覽
8259 稱為可程式設計中斷控制器 (PIC) 微處理器。在 8085 和 8086 中,分別有五個硬體中斷和兩個硬體中斷。透過新增 8259,我們可以增加中斷處理能力。該晶片將多中斷輸入源組合到單箇中斷輸出中。這提供了從 IR0 到 IR7 的 8 箇中斷。讓我們看看這個微處理器的某些功能。該晶片專為 8085 和 8086 設計。它可以在邊沿觸發或電平觸發模式下進行程式設計我們可以遮蔽中斷請求暫存器的各個位。透過級聯 8259 晶片,我們可以將中斷增加到最多 64 條中斷線時鐘... 閱讀更多
6K+ 次瀏覽
在這裡,我們將瞭解 8254 可程式設計間隔定時器晶片的控制字和操作模式。在討論其操作模式和控制字屬性之前,我們應該瞭解該晶片的一些重要事實。當晶片通電時,狀態未定義。此時,模式、計數值和輸出未定義。每個計數器在使用前必須進行程式設計。我們不需要程式設計一些未使用的計數器。計數器透過寫入控制字然後寫入一個初始計數來進行程式設計。計數器的結構如下 -76543210SC1SC0RW1RW2M2M1M0BCD/Binary 我們可以透過 SC1 選擇計數器... 閱讀更多
在這裡,我們將瞭解如何查詢帶進位的 2 的補碼。問題陳述編寫 8085 組合語言程式以查詢儲存在 F100 中的數字的帶進位的 2 的補碼,並將其儲存在 F150 和 F151 中。討論在 8085 中,有 CMA 指令來對數字進行求反。然後我們可以用 01 加它來使其成為 2 的補碼。當用 01 加它時,可能會生成進位。我們將將其儲存到 F151 中,實際的補碼將在 F150 中。輸入地址資料……F10008……流程圖程式地址十六進位制程式碼標籤助記符註釋F0003A, 00, F1 LDA F100H從記憶體獲取數字到 AF0032F CMA獲取 1 的補碼F004C6, 01 ADI 01增加 1F0066F MOV L, A儲存 A ... 閱讀更多
2K+ 次瀏覽
在這裡,我們將瞭解如何在 8085 中對兩個 8 位數字求和,不帶進位。問題陳述編寫 8085 組合語言程式以執行 8 位加法,不帶進位。數字儲存在 F100 和 F101 中。結果將儲存在 F102 中。討論在 8085 中,有 ADD 指令來對兩個數字求和。我們將設定 HL 對以指向數字,然後將累加器載入到數字中。然後使用 ADD M 操作,該操作可以將 HL 對指向的記憶體中的專案和累加器相加。輸入地址資料……F100CEF10121……流程圖程式地址十六進位制程式碼標籤助記符註釋F00021, 01, F1 LXI H, F100H指向獲取數字F0037E MOV A, M將第一個數字載入到 AF00423 INX H指向... 閱讀更多
4K+ 次瀏覽
在這裡,我們將瞭解如何使用 8085 執行 BCD 減法。問題陳述編寫 8085 組合語言程式以執行儲存在位置 8001 和 8002 中的兩個數字的 BCD 減法。結果將儲存在 8050 和 8051 中。討論要減去兩個 BCD 數字,我們將使用 10 的補碼方法。獲取第一個數字並將其儲存到 B 中,將 99 載入到 A 中,然後減去該數字以獲取 9 的補碼。之後,用 1 加結果以獲取 10 的補碼。我們不能使用 INR 指令增加。這不會影響 CY 標誌。所以我們必須... 閱讀更多
在這裡,我們將瞭解如何拆分 8 位數字的兩個 nibbles。問題陳述編寫 8085 組合語言程式以拆分 8 位數字的兩個 nibbles。數字儲存在 F050 中,我們將結果儲存在 F051 和 F052 中。討論要分別獲取 nibbles,首先我們將數字作為副本輸入 B 暫存器。現在掩蓋高 nibble 以獲取低 nibble 並存儲它,然後再次從 B 獲取數字,掩蓋低 nibble 以獲取高 nibble,然後將其旋轉四次以使其成為低位 nibble,然後將其儲存到另一個位置。輸入地址資料F05035地址資料F050BE流程圖程式地址十六進位制程式碼標籤助記符註釋F0003A, ... 閱讀更多