Перевод в 2 / 8 / 16 Системы счисления

Тема в разделе "Общие вопросы по С и С++", создана пользователем Mendler, 29 мар 2007.

Статус темы:
Закрыта.
  1. Mendler

    Mendler Гость

    Помогите плиз написать небольшой код перевода чисел в СС побитовым сдвигом... :)
     
  2. Mendler

    Mendler Гость

    Во первых, это перевод не побитовым сдвигом, а остатками от деления.
    Во вторых, мне нужно чтобы он н-р десятичное -1 было представлено в двоичной как 11111111 :(

    Что-то вроде, вот этого, только как убрать нули из начала? :/

    Код (Text):
    #include <stdio.h>
    #include <conio.h>

    int main ()
    {
    unsigned int base=32, osn = 0, mask, razr = 0;
    int chislo;
    char str[]="0123456789ABCDEF"; 
    printf("Enter Number:");   
    scanf("%d",&chislo);   
    while (osn!=2 && osn!=8 && osn!=16)
    {
    printf("Enter SS:");
    scanf("%d",&osn);
    }
    mask=1;
    while (base > razr)
    {
    razr=razr+mask;
    }
    while ( razr!=0 )
    {
    razr=razr-mask;
    printf("%c",str[(chislo>>razr)&mask]);
    }
    getch();
    }
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей