Tipi numerici IA32
I tipi numerici di base dell'Isa IA32
Per comodità indico anche la corrispondenza del tipo IA32 con il tipo del linguaggio C.
Interi
| Nome tipo IA32 | numero byte | bit | tipo C | suffisso |
|---|---|---|---|---|
| Byte | 1 | 8 | char | b |
| Word | 2 | 16 | short int | w |
| Double Word | 4 | 32 | int, long | l |
| Quad Word | 8 | 64 |
Virgola mobile
| Nome tipo IA32 | numero byte | bit | tipo C | suffisso |
|---|---|---|---|---|
| Single precision | 4 | 32 | float | |
| Double precision | 8 | 64 | long | |
| Extended precision | 12 | 96 | long double |
Nota. Un tipo Byte è l'unità più piccola, si usa per dati di 1 byte. Il tipo Word per un numero intero di 2 bytes, ecc. I numeri interi possono essere con segno o senza segno (unsigned). In IA32 è l'ISA a decidere se il dato è con segno o meno al momento dell'operazione.
E' importante sottolineare che i tipi in linguaggio C non indicano il numero di byte per ogni tipo (int, float, ecc.).
E' la ISA ad associare il tipo C con un tipo di base e quindi a un determinato numero di byte.
In questo modo il programma C può essere compilato su macchine a 8, 16, 32, 64 bit.
E così via.
