Sezione

Indirizzi Base Registri Interni
Area Comunicazione BIOS Funzioni BIOS Funzioni DOS
Prefazione Capitolo 1 Capitolo 2 Schede
Libreria ASM Libreria MAC Palestra Progetti ASM
Info Download INDICE

Schede del Tutorial

Home » Programma il Computer » Tutorial Assembly

Le Schede del Tutorial

  Numeri e Logica Binaria

SCHEDA n° 09 [ 5  di 20] 

    

           Aggiornato 4 ottobre 2010
    Numeri senza segno: la sottrazione aritmetica
     
bulletL'aritmetica sui numeri binari senza segno prevede naturalmente anche sottrazione, anche in questo caso del tutto simile a quella decimale; la cifra del minuendo è sottratta dalla cifra del sottraendo colonna dopo colonna, tenendo conto dell'eventuale prestito da sottrarre con gli eventuali operandi della colonna adiacente a sinistra.
bulletLa regola da applicare a ciascuna colonna è, nei 4 casi possibili:

      

Binario

Decimale

 0-0= 0 con prestito di 0

(00)2 0-0= 0

 0-1= 1 con prestito di 1
 

(10)2 2-1= 1

 1-0= 1 con prestito di 0

(01)2 1-0= 1

 1-1= 0 con prestito di 0

(01)2 1-1= 0

      

bulletL'interpretazione decimale della tabella mostra che la seconda sottrazione non può essere fatta se lo 0 del sottraendo non viene inteso come quello del numero 2, (10)2, ottenuto col tacito accordo di avere un prestito da togliere alle "decine" (la colonna adiacente a sinistra).
bulletVediamo alcuni esempi:

      

Binario

Decimale

     100 -
      11 -
P    11. =
----------
     001

     4 -
     3 =

----------
     1

      

Binario

Decimale

     110 -
      11 -
P    11. =
----------
     011

     6 -
     3 =

----------
     3

      

Binario

Decimale

    1101 -
      11 =
P   .1..  
----------
    1010

    13 -
     3 =

----------
    10

      

bulletIl processore 80x86 prevede 2 istruzioni specifiche, la SUB (Sottrazione aritmetica tra numeri interi) e la SBB (Sottrazione aritmetica tra numeri interi, con prestito), eseguita in pochi nanosecondi con operandi di tutte le dimensioni (a 8, 16, 32 bit, ...); a maggior ragione non è il caso perdere ulteriore tempo, data la particolare paranoia di questa operazione

      

bulletSegnalo soltanto la possibilità di avere problemi di overflow (trabocco dei limiti consentiti) anche nell'esecuzione della sottrazione; in questo caso l'errore si manifesta quando si tenta di sottrarre un minuendo più grande del sottraendo.

      

bulletLa flag Carry assume in questo caso comunque il valore del prestito (borrow) della differenza di numeri binari della stessa dimensione ed è facilmente consultabile (insieme ad altri bit dello stesso tipo) in un particolare Registro del processore 80x86, a disposizione del programmatore assembly.

      

bulletIn ultimo possiamo mostrare la Tabella di Verità di una sottrazione aritmetica tra 2 numeri da 1 bit ciascuno:

      

A B Differenza Prestito
0 0 0 0
0 1 1 1
1 0 1 0
1 1 0 0

    

Pagina Precedente Scheda n° 09 Pagina Successiva Numeri e Logica Binaria Torna al Menu delle Schede del "Tutorial" Lezioni - Vai al DownLoad dei files DOC Torna al Menu del "Tutorial"
Scheda n° 09 -  5
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

    

SCHEDE » 1.Header EXE 2.PseudoOp MASM 3.Differenza tra Macro e Procedure
4.
Tabella Vettori 5.PSP 6.Stack 7.Istruzioni 80x86
8.La misura dell'Informazione 9.Numeri e Logica Binaria
TUTORIAL » Indirizzi Base | Registri Interni | Area Comunicaz. BIOS | Funzioni BIOS | Funzioni DOS
Prefazione | CAP 1 | CAP 2 | Schede | Palestra
Libreria ASM | Libreria MAC | Progetti ASM | Download | Info | Indice
Home 
Pascal|Manuali|Tabelle|Schede
Tutorial Assembly|Palestra Assembler
Aggiungi Giobe®2000 ai preferiti  
Motore
Ricerca
  Rendi Giobe®2000 pagina di Default
© 2001-2010  -  Studio Tecnico ing. Giorgio OBER
Tutti i diritti sono riservati