Прямой, обратный, обратный, дополнительный коды, модифицированные коды: определение, назначение, правила перевода, достоинства и недостатки
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

Прямой код предназначен для отображения целых и дробных чисел со знаком.

Обратный код. Положительные такие же, как в прямом коде, а отрицательные инвертируются.

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


 

 

1 4 10 + 8 10 = 2 2 10                                
                                                   
1 4 10 = 0 . 1 1 1 0 пр = 0 . 1 1 1 0 об              
  8 10 = 0 . 1 0 0 0 пр = 0 . 1 0 0 0 об              
                                                   
     

+

0 . 1 1 1 0                                
      0 . 1 0 0 0                                
        1 . 0 1 1 0

- переполнение (1. – отрицательное)

                                                   
     

+

0 . 0 1 1 1 0                              
      0 . 0 1 0 0 0                              
        0 . 1 0 1 1 0 = 2 2 10                      
                                                   
1 4 10 - 8 10 = 2 2 10                                
                                                   
1 4 10 = 0 . 1 1 1 0 пр = 0 . 1 1 1 0 об              
- 8 10 = 1 . 1 0 0 0 пр = 1 . 0 1 1 1 об              
                                                   
     

+

0 . 1 1 1 0                                
      1 . 0 1 1 1                                
   

+

1 0 . 0 1 0 1                                
                1                                
        0 . 0 1 1 0 = 6 10                          
                                                   
                                                   
- 1 4 10 = 1 . 1 1 1 0 пр = 1 . 0 0 0 1 об            
  - 8 10 = 1 . 1 0 0 0 пр = 1 . 0 1 1 1 об            
                                                   
     

+

1 . 0 0 0 1                                
      1 . 0 1 1 1                                
   

+

1 0 . 1 0 0 0                                
                1                                
        0 . 1 0 0 1

- переполнение

             
                                                   
     

+

1 . 1 0 0 0 1                              
      1 . 1 0 1 1 1                              
   

+

1 1 . 0 1 0 0 0                              
                  1                              
        1 . 0 1 0 0 1 = 1 . 1 0 1 1 0 пр = - 2 2 10  

 

Дополнительный код.

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

Отрицательные:

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

- 1 4 10 = 1 . 1 1 1 0 пр = 1 . 0 0 0 1 об = 1 . 0 0 1 0 дп
  - 8 10 = 1 . 1 0 0 0 пр = 1 . 0 1 1 1 об = 1 . 1 0 0 0 дп

2 способ: переписываем прямой код справа налево до первой единицы включительно, остальные инвертируем.

- 1 4 10 = 1 . 1 1 1 0 пр = 1 . 0 0 1 0 дп
  - 8 10 = 1 . 1 0 0 0 пр = 1 . 1 0 0 0 дп

3 способ: вычитаем из нуля двоичный код числа.

 

 

 

Сложение:

Вычеркиваем все символы справа от первого после точки.

  6 10 = 0 . 1 1 0 пр = 0 . 1 1 0 дп                            
- 6 10 = 1 . 1 1 0 пр = 1 . 0 1 0 дп                            
                                                             
 

+

0 . 1 1 0                                                
  1 . 0 1 0                                                
  1 0 . 0 0 0 = 0 10                                          
                                                             
  - 8 10 = 1 . 1 0 0 0 пр = 1 . 1 0 0 0 дп                      
- 1 4 10 = 1 . 1 1 1 0 пр = 1 . 0 0 1 0 дп                      
                                                             
   

+

1 . 1 0 0 0                                            
    1 . 0 0 1 0                                            
    1 0 . 1 0 1 0

- переполнение (получили положительное знач.)

           
                                                             
   

+

1 . 1 1 0 0 0                                          
    1 . 1 0 0 1 0                                          
    1 1 . 0 1 0 1 0 = 1 . 0 1 0 0 1 = 1 . 1 0 1 1 0 пр = 2 2 10
                                                             

 

Модифицированный код.

1.1011 – отрицательное число или положительное с переполнением?

Модификация – два разряда для знака.

00. – положительное.

11. – отрицательное.

01. – положительное с переполнением.

10. – отрицательное с переполнением.

 

В дополнительном коде сложение отрицательных и положительных чисел происходит по одному правилу. + меньше памяти занимает.


Понятие разрядной сетки. Понятие переполнения. Понятие машинного нуля.

Разрядная сетка – это кол-во двоичных разрядов, выделяемых в памяти для отображения чисел. Она напрямую зависит от разрядности процессора. Если число вышло за пределы разрядной сетки слева, то говорят о переполнении разрядной сетки. Если справа – то о возникновении машинного нуля.

Сложение и вычитание в обратном и дополнительном коде. Переполнение и его устранение.

см. 13.

Дата: 2019-04-23, просмотров: 425.