Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Теоретическая часть. При переводе чисел из десятичной системы счисления в систему с основанием P > 1 обычно используют следующий алгоритм:



При переводе чисел из десятичной системы счисления в систему с основанием P > 1 обычно используют следующий алгоритм:

1) если переводится целая часть числа, то она делится на P, после чего запоминается остаток от деления. Полученное частное вновь делится на P, остаток запоминается. Процедура продолжается до тех пор, пока частное не станет равным нулю. Остатки от деления на P выписываются в порядке, обратном их получению;

2) если переводится дробная часть числа, то она умножается на P, после чего целая часть запоминается и отбрасывается. Вновь полученная дробная часть умножается на P и т.д. Процедура продолжается до тех пор, пока дробная часть не станет равной нулю. Целые части выписываются после двоичной запятой в порядке их получения. Результатом может быть либо конечная, либо периодическая двоичная дробь. Поэтому, когда дробь является периодической, приходится обрывать умножение на каком-либо шаге и довольствоваться приближенной записью исходного числа в системе с основанием P.

Пример 1. Перевести данное число из десятичной системы счисления в двоичную (получить пять знаков после запятой в двоичном представлении).

а) 464(10); б) 380,1875(10); в) 115,94(10)

Решение

а) 464     б) 380         в) 115      
                       
                       
                       
                       
                       
                       
                       
                       

а) 464(10)=111010000(2); б) 380,1875(10) = 101111100,0011(2); в) 115,94(10)» 1110011,11110(2)

(в данном случае было получено шесть знаков после запятой, после чего результат был округлен.)

Если необходимо перевести число из двоичной системы счисления в систему счисления, основанием которой является степень двойки, достаточно объединить цифры двоичного числа в группы по столько цифр, каков показатель степени, и использовать приведенный ниже алгоритм. Например, если перевод осуществляется в восьмеричную систему, то группы будут содержать три цифры (8 = 23). В целой части числа группировка производится справа налево, в дробной части — слева направо. Если в последней группе недостает цифр, дописываются нули: в целой части — слева, в дробной — справа. Затем каждая группа заменяется соответствующей цифрой новой системы. Соответствия приведены в таблице.

P Соответствия
           
           
                   
                                 
                                 
                      A B C D E F

Переведем из двоичной системы в шестнадцатеричную число 1111010101,11(2).

001111010101, 1100 (2) = 3D5,C(16).

При переводе чисел из системы счисления с основанием P в десятичную систему счисления необходимо пронумеровать разряды целой части справа налево, начиная с нулевого, и дробной части, начиная с разряда сразу после запятой, слева направо (начальный номер –1). Затем вычислить сумму произведений соответствующих значений разрядов на основание системы счисления в степени, равной номеру разряда. Это и есть представление исходного числа в десятичной системе счисления.

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

а) 1000001(2).

1000001(2) = 1 × 26 + 0 × 25 + 0 × 24 + 0 × 23 + 0 × 22 + 0 × 21 + 1 × 20 = 64 + 1 = 65(10).

Замечание. Если в каком-либо разряде стоит нуль, то соответствующее слагаемое можно опускать.

б) 1000011111,0101(2).

1000011111,0101(2) = 1 × 29 + 1 × 24 + 1 × 23 + 1 × 22 + 1 × 21 + 1 × 20 + 1 × 2–2 + 1 × 2–4 =

= 512 + 16 + 8 + 4 + 2 + 1 + 0,25 + 0,0625 = 543,3125(10).

в) 1216,04(8).

1216,04(8) = 1 × 83 + 2 × 82 + 1 × 81 + 6 × 80 + 4 × 8–2 = 512 + 128 + 8 + 6 + 0,0625 = 654,0625(10).

г) 29A,5(16).

29A,5(16) = 2 × 162 + 9 × 161 + 10 × 160 + 5 × 16–1 = 512 + 144 + 10 + 0,3125 = 656,3125(10).

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

+       ´    
             
             
+                
                 
                 
                 
                 
                 
                 
                 
                 
´                
                 
                 
                 
                 
                 
                 
                 
                 
+                     A B C D E F
                      A B C D E F
                    A B C D E F  
                  A B C D E F    
                A B C D E F      
              A B C D E F        
            A B C D E F          
          A B C D E F            
        A B C D E F              
      A B C D E F                
    A B C D E F                  
A A B C D E F                    
B B C D E F                     1A
C C D E F                     1A 1B
D D E F                     1A 1B 1C
E E F                     1A 1B 1C 1D
F F                     1A 1B 1C 1D 1E
´                     A B C D E F
                                 
                      A B C D E F
            A C E           1A 1C 1E
          C F       1B 1E       2A 2D
        C       1C       2C       3C
      A F     1E     2D     3C     4B
      C     1E   2A     3C     4E   5A
      E   1C   2A     3F   4D   5B    
                                 
        1B   2D   3F     5A   6C   7E  
A   A   1E     3C     5A   6E     8C  
B   B     2C     4D     6E     8F 9A A5
C   C       3C       6C       9C A8 B4
D   D 1A       4E 5B       8F 9C A9 B6 C3
E   E 1C 2A           7E 8C 9A A8 B6 C4 D2
F   F 1E 2D 3C 4B 5A         A5 B4 C3 D2 E1

Пример 3. Сложить числа:

а) 10000000100(2) + 111000010(2) = 10111000110(2); б) 223,2(8) + 427,54(8) = 652,74(8); в) 3B3,6(16) + 38B,4(16) = 73E,A(16).

                                    ,             B   ,  
+                           +                 +          
                                    ,               B ,  
                                    ,               E , A

Пример 4. Выполнить вычитание:

а) 1100000011,011(2) – 101010111,1(2) = 110101011,111(2);

б) 1510,2(8) – 1230,54(8) = 257,44(8);

в) 27D,D8(16) – 191,2(16) = EC,B8(16).

                      ,                     ,               D , D  
                                                             
                      ,                                       ,    
                      ,                     ,             E C , B  

Пример 5. Выполнить умножение:

а) 100111(2) ´ 1000111(2) = 101011010001(2);

б) 1170,64(8) ´ 46,3(8) = 57334,134(8);

в) 61,A(16) ´ 40,D(16) = 18B7,52(16).





Дата публикования: 2014-11-18; Прочитано: 469 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.01 с)...