1
私はHLで最大数のアドレスを格納したいが、私は本当にする方法がわからないが、それ これは私がこれまでに 最大の数 - 8085マイクロプロセッサ
0000 LXI H,3000H ;Load H-L pair with address 3000H
0001
0002
0003 MOV E,M ;Move counter from memory to reg. E.
0004 INX H ;Increment H-L pair
0005 MOV A,M ;Move the 1st number from memory to reg. A.
0006 DCR E ;Decrement counter.
0007 INX H ;Increment H-L pair
0008 MOV D,M ;Move the next number from memory to reg. D.
0009 CMP D ;Compare D with A.
000A JNC 000EH ;Jump to address 000EH if there is no carry
000B
000C
000D MOV A,D ;Move largest from reg. D to reg. A.
000E DCR E ;Decrement counter.
000F JNZ 0007H ;Jump to address 0007H if counter is not zero.
0010
0011
0012 INX H ;Increment H-L pair.
0013 MOV C,A ;Move the result from reg. A to C
0014 HLT
**MEMORY**
3000H: 05 (counter)
3001H: 2C
3002H: 1E
3003H: 58
3004H: 46
3005H: 53
をやったものです
最大数を見つける部分でコードは正常に機能しますが、最終的にHLに最大数のアドレスを格納することです
あなたのコードをコメントしてもらえますが、これを実行すると正確には何ができませんか? ([mcve]を参照)。また、書式を修正できますか? (二重スペースを削除して、すべてのコードを選択し、 '{}'アイコンをクリックしてコードブロックにします)。 –
コードは機能しますが、最大値のアドレスを保存したいと思います。この場合、プログラムを実行した後、HLは最高値のアドレスであるため、3003Hのアドレスを格納します。 – user1678
ニースの編集は、読みやすさが大幅に向上し、最後の段落が実際の質問になります。 –