Открыть Электронные книги
Категории
Открыть Аудиокниги
Категории
Открыть Журналы
Категории
Открыть Документы
Категории
Лабораторная работа №5
по курсу «Микропроцессоры»
Выполнил:
Студент группы ПО-18
Сирота Д.Д.
Проверила:
Авксентьева О.А.
Донецк 2020
1. Архитектура сопроцессора i8087
4. Разработка программы
Исходные данные:
Вариан
Функция K X Y C Формат данных
т
19 Z=K*C-X* 0. 4.2 5.
1.125 КВ
Y 5 5 4
Начальный адрес программы: 4000:0100
Адрес данных: 5000:0100
Число 16сс В памяти
K 3F 00 00 00 00 00 00 3F
X 3F A0 00 00 00 00 A0 3F
Y 40 90 00 00 00 00 90 40
C 40 AC CC CC CC CC AC 40
K*C 40 2C CC CC CC CC 2C 40
X*Y 40 19 00 00 00 00 19 40
K * C - X * Y 3F F5 99 99 99 99 F5 3F
Расположение чисел в памяти:
5000:0100 00 00 00 3F K
5000:0104 00 00 A0 3F X
5000:0108 00 00 90 40 Y
5000:010 CC CC AC C
С 40
5000:0110 99 99 F5 3F Z
Расположение чисел в стеке:
ST0 X ST0 X*Y ST0 K ST0 K*C ST0 Z
ST1 Y ST1 Y ST1 C ST1 C ST1 C
ST2 K ST2 K ST2 X*Y ST2 X*Y ST2 X*Y
ST3 C ST3 C ST3 Y ST3 Y ST3 Y
стек после стек после стек после стек после стек после
загрузки операндов умножения XCHG второго умножения вычитания
Код программы:
coop w reg OP
0100 B80050 MOV AX,5000 1011 1 000 0000 0000 0101 0000
B 8 0 0 5 0
coop d mod sreg reg
0103 9ED9 MOV DS,AX 100011 1 0 11 011 000
9 E D 9
;FINIT esc cop mod cop mem
0105 DBE3 ESC 1C, BL 11011 011 11 100 011
D B E 3
;FLD Y esc cop mod cop mem
0107 D9060801 ESC 08,[0108] 11011 001 00 000 110 0104h
D 9 0 6
; FLD X esc cop mod cop reg
0109 D9060401 ESC 08,[0104] 11011 001 00 000 110 0108h
D 9 0 6
;FLD C esc cop mod cop reg
010B D9060С01 ESC 08,[010С] 11011 001 00 000 110
010Ch
D 9 0 6
; FLD K esc cop mod cop reg
010D D9060001 ESC 08,[0100] 11011 001 00 000 110
0100h
D 9 0 6
; FMUL esc cop mod cop reg
010F D8С9 ESC 01,CL 11011 000 11 001 001
D 8C 9
;FXCH esc cop mod cop reg
0111 D9CA ESC 09,DL 11011 001 11 001 010
D 9 C A
; FMUL esc cop mod cop reg
0113 D8CB ESC 01,BL 11011 000 11 001 011
D 8 C B
; FSUB esc cop mod cop reg
0115 D8E2 ESC 04,DL 11011 000 11 100 010
D 8 E 2
;FST Z esc cop mod cop mem
0117 D9160001 ESC 0A,[0100] 11011 001 00 010 110
D 9 1 6