CATEGORII DOCUMENTE |
Bulgara | Ceha slovaca | Croata | Engleza | Estona | Finlandeza | Franceza |
Germana | Italiana | Letona | Lituaniana | Maghiara | Olandeza | Poloneza |
Sarba | Slovena | Spaniola | Suedeza | Turca | Ucraineana |
Bajke | Biologija | Elektricitet | Geografija | Glazba | Gospodarstvo | HR | Književnost |
Lijek | Marketing | Matematika | Obrazovanje | Osobnosti | Politika | Povijest | Pravo |
Psihologija | Računala it | Recepti | Tehnika | Turizam | Umjetnost |
DOCUMENTE SIMILARE |
|
TERMENI importanti pentru acest document |
|
ARITMETI KE INSTRUKCIJE 166 - 169
Operandi ovih instrukcija mogu biti binarni ili decimalni. Binarni brojevi mogu biti označeni ili neoznačeni. Decimalni brojevi su neoznačeni i mogu biti pakovani ili nepakovani. Jedna decimalna cifra se predstavlja se četiri bita. Ako se u bajtu koristi nižih četiri bita, za zapis decimalne cifre, a viših četiri bita su nule, radi se o nepakovanoj decimalnoj cifri. Ako se za zapis koriste i viši bitovi u okviru bajta, radi se o pakovanom zapisu. Tada jedan bajt može da sadrži decimalne brojeje od 0 do 99. Bez obzira na to da li se radi o binarnom ili decimalnom broju, mP uvek tretira brojeve kao binarne.
Primer 79 = 01111001
+ 63 = 01100011
----- ----- -----------------
142 11011100
Odavde je očigledno da su potrebne posebne aritmetičke operacije za pakovane brojeve .
1. SABIRANJE
ADD a, b; a a + b ADC a, b; a a + b + CF | ||
AAA - za nepakovane decimalne brojeve DAA - za pakovane decimalne brojeve |
Za korekciju rezultata koji je u AL |
INC a а а + 1
Primeri:
- Sabrati broj iz registra BX:AX sa brojem iz registra DX:CX. Rezultat upisati u DX:CX
ADD CX, AX
ADC DX, BX
- Sabrati dva pakovana decimalna broja iz AL i BL
ADD AL, BL
DAA
2. ODUZIMANJE
SUB a, b; a a – b
SBB a, b; a a – b – CF
AAS - analogno sa AAA
DAS - analogno sa DAA
DEC a; a a – 1
NEG a; a -a
CMP a, b; računa a – b, i pamti samo znak ()
3. MNOŽENJE
MUL a; koristi se za neoznačene binarne brojeve
IMUL a; koristi se za označene binarne brojeve
Pri čemu se, pri radu sa bajtovima, prvi operand uzima iz akumulatora (AL), drugi operand je naveden u adresnom polju instrukcije a rezultat se upisuje u AX. Odnosno pri radu sa rečima, prvi operand je u AX, drugi operand je u adresnom polju instrukcije, a rezultat u DX:AX.
Pakovani decimalni brojevi se ne mogu množiti direktno, već se prethodno moraju
raspakovati.
primer: MUL CX ; Neoznačeni proizvod AX-a i CX-a, rezultat ide u DX:AX
IMUL REC ; Označeni proizvod AX-a i REC-a, rezultat ide u DX:AX
MUL CL ; Neoznačeni proizvod AL-a i CL-a, rezultat ide u AX
I MUL BAJT ; Označeni proizvod AL-a i mem. BAJT, rezultat ide u AX
Instrukcija AAM se odnosi na nepakovane decimalne brojeve (prevodi nepakovani decimalni broj u binarni ??). Nakon množenja nepakovanih decimalnih brojeva, (jedan u nekom bajtu, adrugi u AL-a), niži nepakovani bajt rezultata rezultata ide u AL, a viši u AH. Pakovani decimalni brojevi se ne mogu množiti direktno, već se prethodno moraju raspakovati.
DELENJE
DIV a; neoznačeni
IDIV a; označeni
Delilac je naveden u naredbi, a deljenik je u AX (ako se dele bajtovi) odnosno u
DX:AX (ako se dele reči). Pri delenju bajtova, količnik se upisuje u AL, a ostatak u AH, dok se pri delenju reči količnik upisuje u AX, a ostatak u DX
Primer: DIV CX; neoznačeno delenje DX:AX sa CX
IDIV BL; označeno delenje AX sa BL
Neposredno delenje nekim brojem nije moguće, već se delilac mora prethodno
upisati u neki registar
AAD; prevodi nepakovani deljenik u binarni broj u AX. Obično se koristi na sledeći način;
AAD; podešava nepakovani deljenik u AH:AL
DIV CL; deli broj (iz AL ili AH) sa CL
5. KONVERZIJA BAJTA U REČ I REČI U DUPLU REČ
Instrukcije za konverziju bajta u reč i reči u dvostruku reč od značaja su za označene
brojeve. Primenjuju se (između ostalog) kod operacija delenja kada se bajt (reč) javlja kao
deljenik a potrebna je dvostruka reč
CBW; AX AL konvertuje bajt u reč
CWD; DX:AX AX konvertuje reč u duplu reč
Primer: MOV AL, BAJT ; Puni AL (akumulator) sadržajem mem lokacije BAJT
CBW ; Priprema se reč u AX za delenje (proširuje se deljenik sa AH)
AAD ; Prevodi nepakovani deljenik u binarni broj
IDIV BX ; Vrši delenje i rezultat smešta u AX, a ostatak u DX
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 2691
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved