summaryrefslogtreecommitdiff
path: root/lib/alu.c
blob: b394b09cf9844806dc00fe45e974d6db0eb900e5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "alu.h"

// rajouter les overflow...

/*****************************************/
/**                                     **/
/**  GESTION DE L'UNITE DE CALCUL       **/
/**                                     **/
/*****************************************/

Uint32 AdditionNonSigne(Uint32 a, Uint32 b)     {   return (a + b); }
Uint32 AdditionSigne(Uint32 a, Uint32 b)        {   return (a + b); }
Uint32 SoustractionNonSigne(Uint32 a, Uint32 b) {   return (a - b); }
Uint32 SoustractionSigne(Uint32 a, Uint32 b)    {   return (a - b); }
Uint32 MultiplicationNonSigne(Uint32 a, Uint32 b) {  return (a * b); }
Uint32 MultiplicationSigne(Uint32 a, Uint32 b)  {   return (a * b); }
Uint32 DivisionNonSigne(Uint32 a, Uint32 b)     {   return (a / b); }
Uint32 DivisionSigne(Uint32 a, Uint32 b)        {   return (a / b); }
Uint32 AND(Uint32 a, Uint32 b)                  {   return (a & b); }
Uint32 OR(Uint32 a, Uint32 b)                   {   return (a | b); }
Uint32 SHL(Uint32 a)                            {   return (a >> 1); }
Uint32 SHR(Uint32 a)                            {   return (a << 1); }