Задание 2. 1.Представить приведённые десятичные числа в двоичной, восьмеричной и шестнадцатеричной системах счисления

Задание 1

1.Представить приведённые десятичные числа в двоичной, восьмеричной и шестнадцатеричной системах счисления.

Числа:32,62,129,528,10232,32199.

Система счисления

Двоичная Восьмеричная Десятичная Шестнадцатеричная
27F8
7DC7

 

Решение.

Одним способом перевода десятичного числа является алгоритм последовательного деления, в соответствии с которым необходимо последовательно делить десятичное число и получающиеся частные (большие, чем 2) на число 2 и выписать последовательно все остатки от деления.

3210=1000002=408=2016

         
-32        
-16      
  -8    
    -4  
      -2  
        0    

 

 
-32  
 

 

 
-32  
 

 

 

2.Привести структуру ОЗУ с размещением этих чисел, начиная с байта с адресом 2000h (нумерация адресов в шестнадцатеричной системе счисления).

 

Номер байта (адреса) Содержимое Комментарий
Число 32 (20 h)
Число 62 (3E h)
Число 129 (81 h)
Младший байт числа 528 (10 h)
Старший байт числа (2 h)
Младший байт числа 10232 (F8 h)
Старший байт числа (27 h)
Младший байт числа 32199(C7 h)
Старший байт числа (7D h)

 

3.Привести фрагмент программы на языке ассемблера, выполняющий присвоение данным числам имен с указанием требуемого формата и системы счисления при чередовании систем счисления.

Восьмиразрядный байт позволяет хранить целое число не больше 255. Для большинства приложений этого недостаточно. Поэтому при необходимости два последовательно расположенных байта рассматривают как одно целое шестнадцатеричное число. Байт с меньшим адресом содержит разряды 0-7 и называется младшим байтом, байт с большим адресом содержит разряды 8-15 и называется старшим байтом. Такие два байта, используемые как единое целое, называются словом.

dan1 db 62, 81h,40o

dan2 dw 1000010000, 23770o, 7DC7h

 

4.Привести структуру ОЗУ с размещением литературных данных 'E’, ‘CDE’, ‘958’.

 

Номер байта (адрес) Содержимое Комментарий
Код символа Е (45h)
Код символа С (43h)
Код символа Е (45h)
Код символа D (44h)
Код символа 9 (39h)
Код символа 5(35h)
Код символа 8(38h)

 

5.Привести структуру ОЗУ с размещением структурных данных без апострофов.

 

Номер байта(адрес) Содержимое Комментарий
Код числа Eh (14)
Код числа 0CEDh
(3309)
Код числа 958h
(2392)

 

 


 

Задание 2

 

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

 

Таблица 1. Исходные данные

Операнды

 

Переведём десятичные числа из таблицы 1 в двоичную систему счисления:

4710=1011112

47810=1110111102

8710=10101112

2033210=1001111011011002

18910=101111012

1099910=101010111101112

 

Решение:

а)47 + 478 = 525

+0000000111011110

0000001000001101

10000011012=20D16

б)87+20332=20419

+0100111101101100

 

1001111110000112=4FC316

 

в)189+10999=11188

+0010101011110111

 

101011101101002=2BB416

2. Выполнить двоичное вычитание десятичных чисел, приведенных в таблицы 1 (второго числа из первого), с указанием результата в двоичной и шестнадцатеричной системах счисления. Указать изменяющиеся при этом признаки в регистре флагов.

а)47-478=-431

- 101111

-1101011112=-1AF16

б)87-20332=-20245

- 1010111

-1001111000101012=-4F1516

в)189-10999=-10810

-10111101

-101010001110102=-2A3A16

3. Привести шесть фрагментов программы на ассемблере с указанием используемых регистров и данных в минимально допустимом формате.

Фрагмент программы, представленный на рис.2.1, реализующей сложение числа 47 с числом 478, с размещением результата в ячейке памяти с адресом 12005h, имеет следующий вид:

Рис. 2.1.Фрагмент программы, реализующей сложение числа 47 с числом 478, с размещением результата в ячейке памяти с адресом 12005h.

 

Фрагмент программы, представленный на рис.2.2, реализующей сложение числа 87 с числом 20332, с размещением результата в ячейке памяти с адресом 12005h, имеет следующий вид:

Рис. 2.2.Фрагмент программы, реализующей сложение числа 87 с числом 20332, с размещением результата в ячейке памяти с адресом 12005h.

 

Фрагмент программы, представленный на рис.2.3 ,реализующей сложение числа 189 с числом 10999, с размещением результата в ячейке памяти с адресом 12005h, имеет следующий вид:

Рис. 2.3.Фрагмент программы, реализующей сложение числа 189 с числом 10999, с размещением результата в ячейке памяти с адресом 12005h.

 

Фрагмент программы, представленный на рис.2.4 ,реализующей вычитание числа 478 из 47, с размещением результата в ячейке памяти с адресом 12005h, имеет следующий вид:

Рис. 2.4.Фрагмент программы, реализующей вычитание числа 478 из 47, с размещением результата в ячейке памяти с адресом 12005h.

 

Фрагмент программы, представленный на рис.2.5, реализующей вычитание числа 20332 из 87, с размещением результата в ячейке памяти с адресом 12005h, имеет следующий вид:

Рис. 2.5.Фрагмент программы, реализующей вычитание числа 20332 из 87, с размещением результата в ячейке памяти с адресом 12005h.

 

Фрагмент программы, представленный на рис.2.6 ,реализующей вычитание числа 10999 из 189, с размещением результата в ячейке памяти с адресом 12005h, имеет следующий вид:

Рис. 2.6.Фрагмент программы, реализующей вычитание числа 10999 из 189, с размещением результата в ячейке памяти с адресом 12005h.