Assembly/Rappresentazione dati/Operazioni di shift su bits: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
Riga 1: | Riga 1: | ||
{{Assembly}} |
{{Assembly}} |
||
Oltre alle operazioni matematiche e logiche, esistono le due '''operazioni di shift'''. Queste operazioni chiamate '''left shift''' e '''right shift''', servono per spostare un numero di bit a sinistra o a destra. Nel C gli operandi erano '''<nowiki><< e >></nowiki>'''. Queste due operazioni lavorano cosi': |
Oltre alle operazioni matematiche e logiche, esistono le due '''operazioni di shift'''. Queste operazioni chiamate '''left shift''' e '''right shift''', servono per spostare un numero di bit a sinistra o a destra. Nel C gli operandi erano '''<nowiki><<'' e ''>></nowiki>'''. Queste due operazioni lavorano cosi': |
||
* 10110100 >> 2 = 00101101 |
* 10110100 >> 2 = 00101101 |
||
* 10110100 << 4 = 01000000 |
* 10110100 << 4 = 01000000 |
Versione delle 23:06, 24 apr 2018
Oltre alle operazioni matematiche e logiche, esistono le due operazioni di shift. Queste operazioni chiamate left shift e right shift, servono per spostare un numero di bit a sinistra o a destra. Nel C gli operandi erano <<'' e ''>>. Queste due operazioni lavorano cosi':
- 10110100 >> 2 = 00101101
- 10110100 << 4 = 01000000
Nel primo esempio, si trattava di right shift. Nel secondo, di left shift.
Se non lo aveste ancora capito, il right shift sposta ogni bit del gruppo a destra tante volte quanto indicate nel numero a destra del segno. I bit che si spostano a destra fino ad uscire dal gruppo, si perdono.
Per il destro, lo stesso nell'altro senso.
Modulo precedente | Torna a | Modulo successivo |