1K+ 次瀏覽
在這裡,我們將學習如何在 8085 中執行二分查詢。問題陳述:編寫 8085 組合語言程式,對儲存在 F110 到 F119 位置的一組資料執行二分查詢。鍵位於 F100。討論要執行二分查詢,陣列必須已排序。我們將下限放入 L,上限放入 H。陣列位置儲存在 DE 暫存器對中。中間值使用 (H + L)/2 計算。為了執行此除法,我們只需將其向右移動一次。然後將中間值放入 D 並檢查專案…… 閱讀更多
2K+ 次瀏覽
在這個程式中,我們將學習如何找到所有偶數的和。問題陳述編寫 8085 組合語言程式以查詢儲存在陣列中的所有偶數的和。陣列的大小儲存在位置 F100;數字從記憶體位置 F101 開始儲存。結果將儲存在 F150。討論要檢查數字是奇數還是偶數,我們可以進行 AND 運算。如果一個數字是奇數,那麼它將包含 1 作為最低有效位 (LSb),對於偶數,LSb 將為 0。因此,如果 AND 運算後的結果為 0,則它是…… 閱讀更多
381 次瀏覽
在這個程式中,我們將學習如何在一個元素陣列中找到只出現一次的數字。問題陳述編寫 8085 組合語言程式以查詢在一個元素陣列中只出現一次的數字。陣列的大小儲存在位置 F100;數字從記憶體位置 F101 開始儲存。結果將儲存在 F150。討論這個問題背後的邏輯很簡單。儘管它在某些情況下可能會發現一些錯誤的結果。如果只有一個數字只出現一次,而其餘數字…… 閱讀更多
3K+ 次瀏覽
在這裡,我們將學習如何使用 8085 除以兩個 16 位數。問題陳述編寫 8085 組合語言程式以除以兩個 16 位數。討論8085 沒有除法運算。要執行除法,我們必須使用重複減法。要執行 16 位除法,我們必須這樣做,但對於暫存器對也是如此。由於暫存器對用於儲存 16 位資料。除數儲存在位置 FC00 和 FC01,被除數儲存在 FC02 和 FC03。除法後,商將儲存在 FC04 和 FC05,餘數將儲存在 FC06 和 FC07。輸入地址資料 FC00 8A FC01 5C FC02 5A FC03 1D 流程圖 程式地址十六進位制程式碼標籤指令註釋 F000 01,… 閱讀更多
在這個程式中,我們將學習如何使用 8085 檢查一個數字是否為素數。問題陳述編寫 8085 組合語言程式以檢查給定數字是否為素數。討論這裡的方法有點不同。我們實際上是在計算唯一因子的數量。對於素數,因子只有兩個。1 和數字本身。因此,如果結果是 02H,則它是素數,否則不是素數。由於沒有除法運算,我們必須透過重複減法來執行除法。輸入地址資料 F100 07 地址資料 F100 FF 地址資料 F100 2F 流程圖 程式地址十六進位制程式碼標籤指令註釋 F000 21, 00, F1 LXI H, F100 指向 F100 以獲取… 閱讀更多
在這個程式中,我們將學習如何計算一組元素中奇數的數量。問題陳述編寫 8085 組合語言程式以計算資料塊中奇數的數量,其中塊大小為 10D。該塊從位置 8000H 開始。討論奇偶校驗非常簡單。我們可以透過檢查最低有效位 (LSb) 來確定一個數字是奇數還是偶數。當 LSb 為 1 時,該數字為奇數,否則為偶數。在這個程式中,我們從記憶體中取出一個數字,然後用 01H 與其進行 AND 運算。如果結果非零,… 閱讀更多
439 次瀏覽
在本節中,我們將使用 8085 計算小於 0AH 的元素。問題陳述有一些元素的陣列。編寫 8085 組合語言程式以計算小於 0AH 的元素數量。討論該陣列從位置 F051H 開始放置。F050 保持陣列的大小。邏輯很簡單。首先,我們將陣列大小放入 B 暫存器。C 暫存器將計算小於 0AH 的元素數量。我們將逐個從記憶體中取出數字,然後將其與 0A 比較。如果 CY 標誌被設定,則… 閱讀更多
567 次瀏覽
在這裡,我們將學習如何檢查數字的兩個半位元組是否相同。問題陳述編寫 8085 組合語言程式以檢查高半位元組和低半位元組是否相同。討論要檢查半位元組,我們必須首先進行掩碼。因此,我們需要掩蓋低半位元組和高半位元組並將它們儲存到不同的暫存器中。高半位元組將向右移動四位以使其成為低半位元組。然後我們可以檢查兩者是否相同。如果它們相同,則在 F150 位置儲存 00,否則在 F150 位置儲存 FF。輸入地址資料 F050 FE 地址資料 F050 AA 流程… 閱讀更多
現在讓我們來看一個 Intel 8085 微處理器的程式。在這個程式中,我們將學習如何生成脈衝波形。問題陳述:編寫 8085 組合語言程式以生成連續的方波。討論要使用 8085 生成方波,我們將連續旋轉 10101010 (AAH)。我們必須傳送 D0 作為輸出。我們將使用 01H 掩蓋累加器的內容。如果它是 0,則輸出將為 0,如果它是 1,則輸出將為 1,因此將生成脈衝。輸入在這種情況下沒有輸入流程圖程式地址十六進位制程式碼標籤指令註釋 8000 16, AA MVI D, AAH 將 10101010 載入到 D 8002 7A ROTATE MOV A, D 將 D 載入到 A 8003 07 RLCRotate A … 閱讀更多
現在讓我們來看一個 Intel 8085 微處理器的程式。在這個程式中,我們將學習如何模擬十六進位制計數器。問題陳述編寫 8085 組合語言程式以模擬十六進位制計數器。討論 8085 中的十六進位制計數器類似於二進位制計數器。有兩個不同的部分。主要的計數部分和延遲部分。我們必須定義一個延遲子程式以在計數期間每個數字之間生成延遲。我們假設我們有一些透過 IO 埠連線的外部顯示器,它將以十六進位制形式顯示結果。輸入這裡我們沒有提供任何輸入。流程圖程式地址十六進位制程式碼標籤指令註釋 F000 06, FF MVI… 閱讀更多