Sottrazione con operatori bitwise
Da Gambas-it.org - Wikipedia.
Il codice per operare una sottrazione con operatori bitwise fra due numeri, considerati come fossero binari, va impostato in modo tale che innanzitutto effettui lo XOR fra i due operandi; poi deve eseguire il NOT bitwise del primo operando. Infine deve effettuare l'AND fra i due operandi, e uno shift a sinistra.
Mostriamo il codice esemplificativo:
Public Sub Main() Dim minuendo, sottraendo, differenza As Integer minuendo = 240 sottraendo = 15 differenza = sottrazione_binaria(minuendo, sottraendo) Print differenza End Private Function sottrazione_binaria(op1 As Integer, op2 As Integer) As Integer Dim sb, prestito As Integer prestito = 1 While prestito <> 0 sb = op1 Xor op2 op1 = Not op1 prestito = op1 And op2 prestito = prestito * CInt(2 ^ 1) op1 = sb op2 = prestito Wend Return op1 End