Napisati program za množenje dveh 8-bitnih predznačenih števil z uporabo mikroprocesorja 8085?
```
ORG 100H
LXI H, 2000H; Inicializirajte par HL za shranjevanje izdelka
MOV A, M; Prvo številko naložimo v akumulator
SBB B; Odštejte drugo število od akumulatorja (z izposojo)
MOV M, A; Rezultat shranite v pomnilnik
DCX H; Zmanjšaj par HL
MOV A, M; Naložite drugo številko v akumulator
DODAJ B; Dodajte prvo številko akumulatorju (s prenosom)
MOV M, A; Rezultat shranite v pomnilnik
INX H; Povečajte par HL
ZANKA JMP; Ponovite zanko
ZANKA:CMP H, 0; Primerjajte par HL z nič
JNZ ZANKA; Če ni nič, skoči nazaj na zanko
HLT; Zaustavite procesor
```
Razlaga
Ta program uporablja navodila SBB (odštevanje z izposojo) in ADD (seštevanje s prenosom) mikroprocesorja 8085 za množenje dveh 8-bitnih predznačenih števil.
Program najprej inicializira par HL, da shrani zmnožek obeh števil. Nato prvo število naloži v akumulator in od njega odšteje drugo število (z izposojo). To nastavi zastavico za prenos, če je prva številka manjša od druge številke, v nasprotnem primeru pa jo počisti.
Program nato shrani rezultat v pomnilnik in zmanjša par HL. Nato naloži drugo številko v akumulator in ji doda prvo številko (s prenosom). To nastavi zastavico za prenos, če je vsota obeh števil večja od 255, v nasprotnem primeru pa jo počisti.
Program nato shrani rezultat v pomnilnik in poveča par HL. Program nato skoči nazaj na oznako LOOP in ponavlja zanko, dokler par HL ne doseže ničle. Nazadnje program zaustavi procesor.
Primer
Če je prvo število 10 in drugo število 5, bo program produkt obeh števil, ki je 50, shranil na pomnilniško mesto 2000H.