8085程式:計算10個數序列中奇數的總數


在這個程式中,我們將學習如何在一段資料中計算奇數的數量。

問題陳述

編寫一個8085組合語言程式,計算一段資料中奇數的數量,資料塊大小為10D,起始地址為8000H。

討論

奇偶數的檢查非常簡單。我們可以透過檢查最低有效位 (LSB) 來判斷一個數是奇數還是偶數。當LSB為1時,該數為奇數,否則為偶數。在這個程式中,我們從記憶體中讀取一個數,然後將其與01H進行AND運算。如果結果不為零,則該數為奇數,否則為偶數。

輸入

地址
資料

.

.

.

.

.

.

8000
DA
8001
53
8002
26
8003
41
8004
17
8005
AC
8006
78
8007
D8
8008
9C
8009
3F

.

.

.

.

.

.

 

流程圖

 

程式

地址
十六進位制程式碼
標籤
助記符
註釋
F000
21, 00, 80
 
LXI H,8000H
指向起始位元組
F003
0E, 0A
 
MVI C,0AH
將計數器初始化為0AH
F005
06, 00
 
MVI B, 00H
清零B暫存器
F007
7E
LOOP
MOV A,M
從記憶體中載入資料
F008
E6, 01
 
ANI 01H
A與01H進行AND運算
F00A
CA, 0E, F0
 
JZ SKIP
如果Z=0,跳轉到SKIP
F00D
04
 
INR B
B加1
F00E
23
SKIP
INX H
指向下一個位置
F00F
0D
 
DCR C
C減1
F010
C2, 07, F0
 
JNZ LOOP
如果Z=0,跳轉到LOOP
F013
78
 
MOV A,B
將計數器載入到A
F014
32, 50, 80
 
STA 8050H
將結果儲存到8050H
F017
76
 
HLT
程式結束

 

輸出

地址
資料

.

.

.

.

.

.

8050
04

.

.

.

.

.

.

 

 

 

 

 

更新於:2019年7月30日

2K+ 瀏覽量

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告