|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Sep 2005
Messaggi: 1400
|
[C/C++] Sottrazione binaria
Salve raga,
stavo giocando un po' con l'aritmetica binaria e gli operatori di bitwise e mi sono incartato volendo implementare un algoritmo per la sottrazione aritmetica binaria (ossia op1>op2, e op1-op2 naturali). so che è necessario effettuare un XOR tra gli operandi per ottenere il nuovo sottraendo da utilizzare per le successive iterazioni, e che per calcolarmi il resto devo effettuare una AND tra NOT(op1) e op2. il ciclo continua finquando il resto nn è zero. il problema è il seguente, ho fatto l'algoritmo ma fa un po' quello che gli pare.. a volte somma, altre da una differenza giusta, altre spara numeri a caso Codice PHP:
Qualcuno sa darmi una mano? Il punto è questo, non so di preciso come implementare l'algoritmo, ho letto solo di come dovrebbe essere fatto (diff e resto), per il resto mi sono appoggiato a quello dell'addizione binaria. Ho googlato per svariate ore senza trovare nulla >.< Ultima modifica di SerMagnus : 04-09-2011 alle 15:06. |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Dec 2006
Messaggi: 3808
|
Quote:
solitamente si usa proprio la rappresentazione in modulo e segno. http://it.wikipedia.org/wiki/Sistema_numerico_binario |
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Sep 2005
Messaggi: 1400
|
la rappresentazione è quella predefinitita, quindi in modulo 2^n.
lo scopo dell'algoritmo è lavorare su interi positivi quindi è una semplice somma binaria (ecco perché unsigned int), quindi ha proprio l'obbiettivo di giocare direttamente sui singoli bit. |
|
|
|
|
|
#4 | |
|
Junior Member
Iscritto dal: Mar 2012
Messaggi: 1
|
soluzione (anche se tardiva!)
Quote:
In effetti è una function molto simile a quella relativa all'addizione binaria, cambia giusto qualcosina. |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:58.




















