Red de conocimiento informático - Computadora portátil - Cómo implementar suma, resta, multiplicación y división en lenguaje C

Cómo implementar suma, resta, multiplicación y división en lenguaje C

Esencialmente son todas operaciones de bits. La suma se implementa de forma recursiva mediante XOR, AND y desplazamiento a la izquierda.

Supongamos que a y b son dos números binarios, entonces a+b = a^b + (a&b)<<1;?

Código de implementación típico: //versión recursiva Suma

int?Add(int?a,?int?b)

{

return?bAdd(a^b,?(a&b)< <1) ?:?a;?

}

//Versión de iteración

int?Add_iter(int?a,?int?b)

{

int?ans;

mientras(b)

{

ans?=?a^b ;

b?=?(a&b)<<1;

a?=?ans;

}

retorno?ans ;

}

Usando la suma y el desplazamiento, puedes simular la multiplicación, división y resta

Resta: a-b? = a+(-b)

Operación de multiplicación: en principio, todavía se calcula mediante la suma, sumando b a.

Operación de división: La operación de división es la inversa de la multiplicación. Mira cuántas b se pueden restar de a