Scrigroup - Documente si articole

Username / Parola inexistente      

Home Documente Upload Resurse Alte limbi doc  

 
CATEGORII DOCUMENTE





BulgaraCeha slovacaCroataEnglezaEstonaFinlandezaFranceza
GermanaItalianaLetonaLituanianaMaghiaraOlandezaPoloneza
SarbaSlovenaSpaniolaSuedezaTurcaUcraineana

BajkeBiologijaElektricitetGeografijaGlazbaGospodarstvoHRKnjiževnost
LijekMarketingMatematikaObrazovanjeOsobnostiPolitikaPovijestPravo
PsihologijaRačunala itReceptiTehnikaTurizamUmjetnost

ARITMETIČKE INSTRUKCIJE

matematika

+ Font mai mare | - Font mai mic







DOCUMENTE SIMILARE

Trimite pe Messenger
ARITMETIČKE INSTRUKCIJE

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.

4.      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

DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 1633
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Distribuie URL

Adauga cod HTML in site



Termeni si conditii de utilizare | Contact
© SCRIGROUP 2019. All rights reserved