Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Правила выполнения простейших арифметических действий




Позиционные системы счисления

Вариант оформления

В разных системах счисления используется разное количество цифр для обозначения чисел. Исторически сложилось, что мы пользуемся десятичной системой счисления, т.е. десятью цифррами (от 0 до 9).

В двоичной системе счисления всего две цифры: 0 и 1. Примеры двоичных чисел: 0, 1, 10, 11, 100, 101, 110, 111, 1000

Чтобы отличать в какой системе счисления записано число, обычно подписывается индекс снизу, например 1012 = 510. Данная запись означает, что 101 в двоичной системе счисления - это 5 в десятичной.

В восьмиричной системе счисления восемь цифр: 0, 1, 2, 3, 4, 5, 6 и 7. Число восемь будет записываться как 10 (810 = 108), девять как 11 (910 = 118) и т.д.

В шестнадцатеричной, соответственно, шестнадцать цифр, но так как мы знаем всего десять, то вводятся дополнительные обозначения:

A=10, B=11, C=12, D=13, E=14 и F=15. Пример шестнадцатеричной записи числа: 1E240 (1E24016 = 12345610).

1. ПЕРЕВОД ЧИСЕЛ ИЗ ДЕСЯТИЧНОЙ СИСТЕМЫ В ДВОИЧНУЮ (A10 → A2)

Для перевода чисел из десятичной системы счисления в двоичную используют так называемый "алгоритм замещения", состоящий из следующей последовательности действий:

1. Делим десятичное число А на 2. Частное Q запоминаем для следующего шага, а остаток a записываем как младшийбит (МБ) двоичного числа.

2. Если частное q не равно 0, принимаем его за новое делимое и повторяем процедуру, описанную в шаге 1. Каждый новый остаток (0 или 1) записывается в разряды двоичного числа в направлении от младшего бита к старшему.

3. Алгоритм продолжается до тех пор, пока в результате выполнения шагов 1 и 2 не получится частное Q = 0 и остаток a = 1.

Перевести десятичное число в двоичное (22310 А2). В соответствии с приведенным алгоритмом получим:

22310: 2 = 11110
22310 - 22210 = 1, остаток 1 записываем в МБ двоичного числа.
11110: 2 = 5510
11110 - 11010 = 1, остаток 1 записываем в следующий после МБ разряд двоичного числа.
5510: 2 = 2710
5510 - 5410 = 1, остаток 1 записываем в старший разряд двоичного числа.
2710: 2 = 1310
2710 - 2610 = 1, остаток 1 записываем в старший разряд двоичного числа.
1310: 2 = 610
1310 - 1210 = 1, остаток 1 записываем в старший разряд двоичного числа.
610: 2 = 310
610 - 610 = 0, остаток 0 записываем в старший разряд двоичного числа.
310: 2 = 110
310 - 210 = 1, остаток 1 записываем в старший разряд двоичного числа.
110: 2 = 010
110 - 0 = 110 , остаток 1 записываем в старший разряд двоичного числа.

 

Таким образом, искомое двоичное число равно 110111112 (22310=110111112).

2. ПЕРЕВОД ЧИСЕЛ ИЗ ДЕСЯТИЧНОЙ СИСТЕМЫ В ШЕСТНАДЦАТЕРИЧНУЮ (A10 → A16)

Перевести десятичное число 223 в шестнадцатеричное (22310 А16). В соответствии с приведенным алгоритмом получим:

Ход решения:
Делим число 22310 на 16 и выписываем остатки
22310 = 13·16 + 15 (15 записывается как F)
Последний множитель перед 16 равный 13 записываем первым.
Затем записываем найденные остатки в обратном порядке.
Получаем: DF

22310: 16 = 1310
22310 - 10810 = 15, остаток 15 записываем в МБшестнадцатеричного числа как F.
1310: 16 = 010
1310 – 010 =1310, остаток 13записываем в старший разряд шестнадцатеричного числа какD

Таким образом, искомое шестнадцатеричное число равно DF (22310= DF16).

3. ПЕРЕВОД ЧИСЛА ИЗ ШЕСНАДЦАТЕРИЧНОЙ СИСТЕМЫ В ДВОИЧНУЮ (A16 → A2)

· каждая цифра исходного числа заменяется тетрадой двоичных цифр в соответствии с таблицей. Если в таблице двоичное число имеет менее 4 цифр, оно дополняется слева незначащими нулями до тетрады;

· незначащие нули в результирующем числе отбрасываются.

 

Соответствие между первыми несколькими натуральными числами всех четырех систем счисления представлено в таблице перевода:

Десятичная Двоичная Восьмеричная Шестнадатеричная
       
       
       
       
       
       
       
       
       
      A
      B
      C
      D
      E
      F
       

 

Перевести 1FF16 → А2

По таблице имеем:

116 = 12 и после дополнения незначащими нулями двоичного числа 12 = 00012;

F16 = 11112

Тогда 1FF16 = 0001111111112.

После удаления незначащих нулей имеем 1FF16 = 1111111112.

4. ПЕРЕВОД ЧИСЛА ИЗ ДВОИЧНОЙ СИСТЕМЫ СЧИСЛЕНИЯ В ДЕСЯТИЧНУЮ (A2 → A10)

Перевести 1111001112 → А10

1111001112 = 1*28 + 1*27 + 1*26 + 1*25 + 0*24 + 0*23 + 1*22 +1*21 + 1*20 = 256 + 128 + 64 + 32 + 0 + 0 + 4 + 2 + 1 = 48710

Таким образом, 1111001112 = 48710

5. ПЕРЕВОД ЧИСЛА ИЗ ДВОИЧНОЙ СИСТЕМЫ СЧИСЛЕНИЯ В ШЕСНАДЦАТЕРИЧНУЮ (A2 → A16)

· исходное число разбивается на тетрады (т.е. 4 цифры), начиная с младших разрядов. Если количество цифр исходного двоичного числа не кратно 4, оно дополняется слева незначащими нулями до достижения кратности 4;

· каждая тетрада заменятся соответствующей шестнадцатеричной цифрой в соответствии с таблицей.

Перевести 1111001112 →А16

Десятичная Двоичная Шестнадатеричная
     
     
     
     
     
     
     
     
     
    A
    B
    C
    D
    E
    F
     

Поскольку в исходном двоичном числе количество цифр не кратно 4, дополняем его слева незначащими нулями до достижения кратности 4 числа цифр. Имеем:

1111001112 = 0001 1110 01112

0111 – первая тетрада – младшая цифра числа

1110 – вторая тетрада – младшая цифра числа

0001 – третья тетрада – старшая цифра числа

В соответствии с таблицей, имеем 0001 1110 01112 = 1E716

 

ПРАВИЛА ВЫПОЛНЕНИЯ ПРОСТЕЙШИХ АРИФМЕТИЧЕСКИХ ДЕЙСТВИЙ

 

Арифметические операции для двоичных и шестнадцатеричных чисел выполняются по тем же правилам, что и для десятичных чисел, которые хорошо знакомы читателю. Рассмотрим на примерах выполнение таких арифметических операций, как сложение, вычитание и умножение для целых чисел.

Правила сложения

Таблица сложения двоичных цифр имеет вид (желтым цветом выделены значения суммы):

     
     
     

Пример 1. Сложить двоичные числа 1101 и 11011.

Запишем слагаемые в столбик и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:          
слагаемые:          
         

Процесс образования суммы по разрядам описан ниже:

а) разряд 1: 12 + 12 = 102; 0 остается в разряде 1, 1 переносится в разряд 2;

б) разряд 2: 02 + 12 + 12 = 102, где вторая 12 – единица переноса; 0 остается в разряде 2, 1 переносится в разряд 3;

в) разряд 3: 12 + 02 + 12 = 102, где вторая 12 – единица переноса; 0 остается в разряде 3, 1 переносится в разряд 4;

г) разряд 4: 12 + 12 + 12 = 112, где третья 12 – единица переноса; 1 остается в разряде 4, 1 переносится в разряд 5;

д) разряд 5: 12 + 12 = 102; где вторая 12 – единица переноса; 0 остается в разряде 5, 1 переносится в разряд 6.

Таким образом: 1 1 0 12 +1 1 0 1 12 = 10 1 0 0 02.

Проверим результат. Для этого определим полные значения слагаемых и суммы (см. Перевод целых чисел):

11012 = 1*23 +1*22 + 0*21 + 1*20 = 8 + 4 + 1 = 13;

110112 = 1*24 + 1*23 + 0*22 + 1*21 + 1*20 = 16 + 8 + 2 + 1 = 27;

1010002 = 1*25 + 0*24 + 1*23 + 0*22 + 0*21 + 0*20 = 32 + 8 = 40.

Поскольку 13 + 27 = 40, двоичное сложение выполнено верно.

Таблица сложения некоторых шестнадцатеричных чисел имеет вид (обозначения строк и столбцов соответствуют слагаемым):

 

                      А В С 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                     1A
B B C D E F                     1A 1B
C C D E F                     1A 1B 1C
D D E F                     1A 1B 1C 1D
E E F                     1A 1B 1C 1D 1E
F F                     1A 1B 1C 1D 1E 1F
                      1A 1B 1C 1D 1E 1F  

 

Пример 2. Сложить шестнадцатеричные числа 1С и 7В.

Запишем слагаемые в столбик и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:    
слагаемые:   С
  В

 

Процесс образования результата по разрядам с использованием приведенной таблицы описан ниже:

а) разряд 1: С16 + В16 = 1716; 7 остается в разряде 1; 1 переносится в разряд 2;

б) разряд 2: 116 + 716 + 116 = 916, где вторая 116 – единица переноса.

Таким образом: 1 С16 + 7 В16 = 9 716.

Проверим результат. Для этого определим полные значения слагаемых и результата (см. Перевод целых чисел):

16 = 1*161 + 12*160 = 16 + 12 = 28;

16 = 7*161 + 11*160 = 112 + 11 = 123;

9716 = 9*161 + 7*160 = 144 + 7 = 151.

Поскольку 28 + 123 = 151, сложение выполнено верно.

Правила вычитания

При вычитании используются таблицы сложения, приведенные ранее.

Пример 3. Вычесть из двоичного числа 101 двоичное число 11.

Запишем алгебраические слагаемые в столбик в порядке “уменьшаемое – вычитаемое” и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:      
уменьшаемое:      
вычитаемое:      

Процесс образования результата по разрядам описан ниже:

а) разряд 1: 12 – 12 = 02;

б) разряд 2: поскольку 0 < 1 и непосредственное вычитание невозможно, занимаем для уменьшаемого единицу в старшем разряде 3. Тогда разряд 2 результата рассчитывается как 102 – 12 = 12;

в) разряд 3: поскольку единица была занята в предыдущем шаге, в разряде 3 остался 0.

Таким образом: 1 0 12 - 1 12 = 1 02.

Проверим результат. Для этого определим полные значения слагаемых и результата. По таблице (или с помощью Перевод целых чисел)имеем:

1012 = 510; 112 = 310; 102 = 210.

Поскольку 5 – 3 = 2, вычитание выполнено верно.

Пример 4. Вычесть из шестнадцатеричного числа 97 шестнадцатеричное число 7В.

Запишем алгебраические слагаемые в столбик в порядке “уменьшаемое – вычитаемое” и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:    
уменьшаемое:    
вычитаемое:   В

Процесс образования результата по разрядам описан ниже:

а) разряд 1: поскольку 716 < В16 и непосредственное вычитание невозможно, занимаем для уменьшаемого единицу в старшем разряде 2. Тогда 1716 – В16 = С16;

б) разряд 2: поскольку единица была занята в предыдущем шаге, разряд 2 уменьшаемого стал равным 816. Тогда разряд 2 результата рассчитывается как 816 – 716 = 116.

Таким образом: 9 716 - 7 В16 = 1 С16.

Проверим результат. переведем все числа в 10-ю систему счисления:

9716 = 9*161 + 7*160 = 144 + 7 = 151.

16 = 7*161 + 11*160 = 112 + 11 = 123;

16 = 1*161 + 12*160 = 16 + 12 = 28;

Поскольку 151 – 123 = 28, вычитание выполнено верно.

Правила умножения

 

Таблица умножения двоичных цифр приведена ниже (обозначения строк и столбцов соответствуют слагаемым):

 

     
     
     

 

Пример 5. Перемножить двоичные числа 101 и 11.

Запишем множители в столбик и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:      
сомножители:      
     

Процесс образования результата по шагам умножения множимого на каждый разряд множителя с последующим сложением показан ниже:

а) умножение множимого на разряд 1 множителя дает результат: 1012 * 12 = 1012;

б) умножение множимого на разряд 2 множителя дает результат: 1012 * 12 = 1012;

в) для получения окончательного результата складываем результаты предыдущих шагов:

слагаемые:        
       
сумма:        

Для проверки результата найдем полные значения сомножителей и произведения в 10-й системе счисления:

1012 = 5; 112 = 3; 11112 = 15.

Поскольку 5 * 3 = 15, умножение выполнено верно: 1012 * 112 = 11112.

Пример 6. Перемножить шестнадцатеричные числа 1С и 7В.

Используем таблицу умножения шестнадцатеричных чисел (обозначения строк и столбцов соответствуют слагаемым):

 

                      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  
C   C       3C       6C       9C    
D   D 1A       4E 5B       8F 9C      
E   E 1C 2A           7E 8C 9A        
F   F 1E 2D 3C 4B 5A                  

Запишем множители в столбик и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:    
сомножители:   С
  В

Процесс образования результата по шагам умножения множимого на каждый разряд множителя с последующим сложением показан ниже (для простоты записи у чисел не показан атрибут шестнадцатеричной системы счисления):

а) умножение на разряд 1 дает результат:

1С*В = (10+C) * B = 10*B+C*B = (1*B)*10+C*B = B0+84 = 134;

б) умножение на разряд 2 дает результат:

1С*70 = (10+C)*7*10 = 10*7*10+C*7*10 = 700+540 = С40;

в) для получения окончательного результата складываем результаты предыдущих шагов:

134+ С40 = D74.

Для проверки результата найдем полное значение сомножителей и произведения, воспользовавшись результатами примера 2 и правилами формирования полного значения числа:

16 = 1*16+ 12 =28;

16 = 7*16 + 11 = 112+11=123;

D7416 = 13*162 + 7*161 + 4*160 = 3328 + 112 + 4 =3444.

Поскольку 28 * 123 = 3444, умножение выполнено верно: 1С16 * 7В16 = D7416.


Машинные коды

В большинстве компьютеров операция вычитания не используется. Вместо нее производится сложение обратных или дополнительных кодов уменьшаемого и вычитаемого. Это позволяет существенно упростить конструкцию АЛУ.

Сложение обратных и дополнительных кодов.

1. А < В

Дано: A=10; B=15

Вычислить: Y2=(A-B)ок; Z2=(В-А)дк

Решение

Целые числа со знаком обычно занимают в памяти компьютера один, два или четыре байта. При этом старший разряд содержит информацию о знаке числа. В компьютерной технике применяется три формы записи (кодирования) целых чисел со знаком: прямой код, обратный код и дополнительный код.

 

Переводим число А10 = 10 из 10-й системы счисления в двоичную:

10: 2 =5, остаток 0 - младший бит (разряд)

5: 2 = 2, остаток 1

2: 2 = 1, остаток 0

1: 2 = 0, остаток 1 – старший бит (разряд)

Таким образом, «собирая» остатки снизу вверх, получаем 10102 = 1010

Аналогично переведем число В10 = 15 из 10-й системы счисления в двоичную:

15: 2 = 7, остаток 1 – младший бит

7: 2 = 3, остаток 1

3: 2 = 1, остаток 1

1: 2 = 0, остаток 1 – старший бит (разряд)

Таким образом, «собирая» остатки снизу вверх, получаем 11112 = 1510

 

1) Вычисление Y2=(A-B)ок

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

 

А10 = +10; А2 = + 1010: [А2]п= 0 ׀ 0001010;

æкод знака (для положительного числа - 0)

 

В10 = -15; В2 = - 1111: [В2]п= 1 ׀ 0001111;

æкод знака (для отрицательного числа - 1)

 

Так как [(А – В)]ок = [А + (-В)]ок = [А]ок + [-B]ок, то найдем обратный код положительного числа А10 = 1010 = А2 = 10102 и отрицательного числа В10 = -15.

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...