#include <stdio.h>
char *form = "%c";
void binary(int n)
{
if (n <= 1)
printf("%d", n);
else
{
binary(n/2);
printf("%d", n%2);
}
}
void octal(int n)
{
if (n <= 8)
printf("%d", n);
else
{
octal(n/8);
printf("%d", n%8);
}
}
void hex(int n)
{
if (n <= 16)
printf("%d", n);
else
{
hex(n / 16);
switch((n % 16))
{
case 1:
__asm mov eax, '1';
break;
case 2:
__asm mov eax, '2';
break;
case 3:
__asm mov eax, '3';
break;
case 4:
__asm mov eax, '4';
break;
case 5:
__asm mov eax, '5';
break;
case 6:
__asm mov eax, '6';
break;
case 7:
__asm mov eax, '7';
break;
case 8:
__asm mov eax, '8';
break;
case 9:
__asm mov eax, '9';
break;
case 10:
__asm mov eax, 'a';
break;
case 11:
__asm mov eax, 'b';
break;
case 12:
__asm mov eax, 'c';
break;
case 13:
__asm mov eax, 'd';
break;
case 14:
__asm mov eax, 'e';
break;
case 15:
__asm mov eax, 'f';
break;
}
__asm push eax;
__asm push form;
__asm call printf;
__asm add esp, 8;
}
}
void main()
{
printf("Hello world./n");
binary(100);
printf("/n");
octal(100);
printf("/n");
hex(100);
printf("/n");
}