Ouais enfin je te conseille de bien mettre des commentaires autour de chaque bout qui dépend de l'endianness.
Pour l'addition, ben soit tu fais de l'asm (addx...), soit tu peux faire à la barbare du genre :
int c;
while (blah) {
res=x1+x2+c;
c=!!((x1&x2)&0x8000);
}
Mais c évidemment bcp moins efficace...