Лабораторная работа №1
Рубрика Микропроцессоры | 15 мая 2009 12:12 | admin
Лабораторная работа №1
«Представление чисел в разрядной сетке микроЭВМ системы Intel»
Задание:
1. Составить на языке Бейсик две программы:
а) программу последовательного ввода с пульта десятичных чисел с фиксированной точкой с записью их в ОЗУ микроЭВМ в виде шестнадцатеричных чисел с плавающей запятой в формате 4-х байтов; предусмотреть вывод на экран видеотерминала значений чисел в 8 с/с и в 16 с/с;
б) программу последовательного ввода с пульта кода шестнадцатеричных чисел с плавающей запятой в формате 4-х байтов; предусмотреть вывод на экран видеотерминала значений чисел в 10 с/с.
2. Используя программу п.1,а данные табл. 1.1 (пункт 2), составить таблицу, аналогичную табл.3.2 (слева – направо).
3. Используя программу п.1,б и данные таблицы 1.1 (пункт 3), составить вторую таблицу, аналогичную 3.2 (справа – налево), предварительно разбив каждые два 16 разрядных слова на 4 байта и выразив каждый байт в 8 с/с или 16 с/с.
4. Найти порядок числа в 2 с/с и 10 с/с, используя смещенный порядок, приведенный в табл. 1.1 (пункт 4).
Таблица 1.1
|
Вариант |
Числа в 10 с/c |
Двоичные числа с плаваю- щей запятой, размещенные в 32 – разрядном формате |
Смещенный порядок |
|
2 |
3040.625 860.5 -3040.625 860.5 |
0000111101110011 1101100010001111
1111000100011111 0001111000010000 |
10011001 01110100 00001110 |
Листинг программы:
10 REM "LABARATORNAYA #1"
12 REM "SOKOLOV"
15 FOR I=1 TO 4
20 INPUT "vvedite chislo!"; X
30 A4=VARPTR(X)
40 A3=A4+1
50 A2=A3+1
60 A1=A2+1
70 PRINT HEX$(PEEK(A1)),
80 PRINT HEX$(PEEK(A2))
90 PRINT HEX$(PEEK(A3)),
100 PRINT HEX$(PEEK(A4))
101 PRINT
102 PRINT OCT$(PEEK(A1)),
103 PRINT OCT$(PEEK(A2))
104 PRINT OCT$(PEEK(A3)),
105 PRINT OCT$(PEEK(A4))
110 NEXT I
115 FOR I=1 TO 2
120 INPUT "vvedite kodi"; Z1,Z2,Z3,Z4
130 POKE A1,Z1
140 POKE A2,Z2
150 POKE A3,Z3
160 POKE A4,Z4
170 PRINT "rezultati"
180 PRINT X
185 NEXT I
190 END
Задание №1, результаты:
vvedite chislo!? 3040.625
8C 3E
A 0
214 76
12 0
vvedite chislo!? 860.5
8A 57
20 0
212 127
40 0
vvedite chislo!? -3040.625
8C BE
A 0
214 276
12 0
vvedite chislo!? -860.5
8A D7
20 0
212 327
40 0
Задание №2.
Переводим числа из третьего столбца таблицы №1.1 в шестнадцатеричную систему счисления. Получаем:
Первое число:
0F 73
D8 8F
Второе число:
F1 1F
1E 10
Результаты:
vvedite kodi? &h0f,&h73,&hd8,&h8f
rezultati
9.172465E-35
vvedite kodi? &hf1,&h1f,&h1e,&h10
rezultati
6.45457E+33
Задание №3.
- 10011001 -> 00011001 (ПК)
24+23+20=25
2) 01110100 -> 11110100 (ДК)
10001011 -> 10001100
-(23+22)=-12
3) 00001110 -> 10001110 (ДК)
11110001 -> 11110010
-(26+25+24+21)=-114