Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






  • Как продвинуть сайт на первые места?
    Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.
    Ускорение продвижения
    Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.
    Начать продвижение сайта
  • Перевод чисел из одной системы счисления в другую






     

    Задача перевода из одной системы счисления в другую часто встречается при программировании и особенно часто – при программировании на языке Ассемблера. Например, при определении адреса ячейки памяти, для получения двоичного или шестнадцатеричного эквивалента десятичного числа. Отдельные стандартные процедуры языков программирования Паскаль, Бейсик, HTML и Си требуют задания параметров в шестнадцатеричной системе счисления. Отыскать неисправность в ЭВМ практически невозможно без представлений о двоичной системе счисления.

    Сначала рассмотрим перевод из двоичной системы счисления в шестнадцатеричную и восьмеричную и наоборот. Это наиболее просто в связи с тем, что 16 = 24, а 8 = 23.

    Правило 1:

    1.1. Для перевода шестнадцатеричного числа в двоичное надо каждую цифру исходного шестнадцатеричного числа заменить четырехразрядным двоичным числом. Незначащие нули отбросить.

    1.2. Для перевода восьмеричного числа в двоичное надо каждую цифру исходного восьмеричного числа заменить трехразрядным двоичным числом. Незначащие нули отбросить.

    Примеры:

    1) Перевести число 7D2, ЕН в двоичную систему счисления.

    Решение:

    Буква Н означает, что число 7D2, Е представлено в шестнадцатеричной системе счисления. Используем правило перевода.

    Отмеченные крайние нули следует отбросить.

    2) Перевести число 305, 416 в двоичную систему счисления.

    305, 416 = 0011 0000 0101, 01002 = 1100000101, 012

    3) Перевести число 127, 328 в двоичную систему счисления.

    Решение:

    Отмеченные крайние нули следует отбросить.

     

    Правило 2:

    2.1. Для перевода числа из двоичной системы счисления в шестнадцатеричную надо число разбить на четверки влево и вправо от запятой. Крайние группы, если необходимо дополнить нулями. Затем каждую четверку двоичных цифр заменить соответствующей шестнадцатеричной цифрой.

    2.2. Для перевода числа из двоичной системы счисления в восьмеричную надо число разбить на тройки влево и вправо от запятой. Крайние группы, если необходимо дополнить нулями. Затем каждую тройку двоичных цифр заменить соответствующей восьмеричной цифрой.

    Примеры:

    1) Перевести число 10111110001, 001В в шестнадцатеричную систему счисления.

    Решение:

    Буква В означает, что число представлено в двоичной системе счисления. Используем правило перевода.

    2) Перевести число 1010111, 11011012 в шестнадцатеричную систему счисления.

    1010111, 11011012 =0101 0111, 1101 10102 = 57, DA16

    3) Перевести число 1010111, 11011012 в восьмеричную систему счисления.

    Правило 3:

    Задано число С, представленное в системе счисления с основанием S:

    C = Cn Cn-1 …C1 C0 C-1 C-m

    Нужно перевести его в h-систему, выполняя действия в новой системе счисления (в h-системе). Для этого нужно представить его в виде суммы степеней S:

    C = Cn Sn + Cn-1 Sn-1 +…+ C1 S1 + C0 S0 + C-1 S-1 +…+ C-m S-m,

    где основание S, коэффициенты С и номера разрядов i выражены в новой h-системе. Разряды нумеруются от запятой влево (0, 1, 2, и т.д.) и вправо (-1, -2 и т.д.).

    Примеры:

    1) Перевести число 2Е5, А16 в десятичную систему счисления.

    В данном случае S = 16, но все расчеты производим в десятичной системе счисления. Номера разрядов: влево от запятой 0, 1, 2, вправо от запятой -1. Во втором разряде стоит коэффициент равен 2, т.е. С2 = 2; в первом разряде С1 = Е, что соответствует числу 14 в десятичной системе счисления; в нулевом разряде С0 = 5; в минус первом разряде С-1 = А, что соответствует числу 10 в десятичной системе счисления. Подставляем эти значения в формулу.

    2Е5, А16 = 2 × 162 + 14 × 161 + 5 × 160 + 10 × 16-1 = 512 + 224 + 5 + 0, 625= = 741, 62510

    2) Перевести число 5210 в двоичную систему счисления.

    В данном случае переводим число из системы с основанием 10, но все расчеты производим в двоичной системе счисления, следовательно, в двоичной системе число 10 соответствует числу 1010, т.е. S = 1010. В первом разряде коэффициент равен 5, что соответствует двоичному числу 101, т.е. С1 = 101; в нулевом разряде стоит коэффициент 2, что соответствует числу 10 в двоичной системе счисления, т.е. С0 = 10.

    5210 = 101 × 10101 + 10 × 10100 = 110010 + 10 = 1101002

    3) Перевести число 1101, 1012 в десятичную систему счисления.

    В данном случае S = 2, но все расчеты производим в десятичной системе счисления. Номера разрядов: влево от запятой 0, 1, 2, 3, вправо от запятой -1, 2, -3. В третьем разряде стоит коэффициент равен 1, т.е. С3 = 1; во втором разряде С2 = 1; в первом разряде С1 = 0; в нулевом разряде С0 = 1; в минус первом разряде С-1 = 1; в минус втором разряде С-2 = 0; в минус третьем разряде С-3 = 1. Подставляем эти значения в формулу.

    1101, 1012 = 1 × 23 + 1 × 22 + 0 × 21 + 1 × 20 + 1 × 2-1 + 0 × 2-2 + 1 × 2-3 = = 8 + 4 + 1 + 0, 5 + 0, 125 = 13, 62510

    4) Перевести число 127, 48 в десятичную систему счисления.

    В данном случае S = 8, но все расчеты производим в десятичной системе счисления. Номера разрядов: влево от запятой 0, 1, 2, вправо от запятой -1. Во втором разряде С2 = 1; в первом разряде С1 = 2; в нулевом разряде С0 = 7; в минус первом разряде С-1 = 4. Подставляем эти значения в формулу.

    127, 48 = 1 × 82 + 2 × 81 + 7 × 80 + 4 × 8-1 = 64 + 16 + 7 + 0, 5 = 87, 510

    Этот способ удобен при S< h и особенно для ручного перевода в десятичную систему счисления.

    Правило 4:

    Для перевода целого числа из S-системы в h-систему счисления в арифметике S-системы нужно последовательно делить это число и получающиеся частные на h до тех пор, пока частное не станет меньше h. Старшей цифрой в новой записи числа будет последнее частное, а следующие за ней цифры дают остатки, вписанные в последовательности, обратной их получению. Все вычисления производятся в старой S-системе. (При S< h прежде, чем записать число, надо получившиеся остатки переписать в цифры h-системы).

    Дробные числа наоборот умножаются на h до тех пор, пока не получится целое число.

    Примеры:

    1) Перевести число 7510 в двоичную, восьмеричную и шестнадцатеричную системы счисления.

      2             8       16      
    74   2         72   8   64      
      36   2         8            
        18   2                    
          8   2           В        
            4                      
              2                    
                                   

    7010 = 10010112 = 1138 = 4В16.

    2) Перевести 12, 37510 в двоичную, восьмеричную и шестнадцатеричную системы счисления.

    Решение:

    Целую и дробную часть переводим по-разному. Сначала переводим целую часть (делением на основание новой системы счисления).

        2    
      12   2  
        6    
          2  
             

    1210 = 11002 = 148 = С16.

     

      375 × 2     375 × 8     375 × 16
      75 × 2            
      5 × 2            
                   

     

    Таким образом, 12, 37510 = 1100, 0112 = 14, 38 = С, 816.

     







    © 2023 :: MyLektsii.ru :: Мои Лекции
    Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
    Копирование текстов разрешено только с указанием индексируемой ссылки на источник.