Национальный аэрокосмический университет им. Н. Е. Жуковского «ХАИ»
кафедра 301
Отчет по лабораторной работе № 1 по курсу «Проектирование информационно – вычислительных комплексов»
Выполнили студенты группы 351
Хорик С. А.
Ярушевский М. Е.
Проверил ст. преподаватель кафедры
301
Джулгаков В.Г.
Харьков’2000
Распределение ресурсов памяти
R0, R1 – адреса исходного и результирующего числа соответственно.
Исходное число двухбайтное. Регистры R2 и R3 хранят старший и младший
байты исходного числа. F0 (psw.5) свободный бит, будем использовать для
хранения знака S.
Счетчик сдвигов j. Для него используем регистр R4. этот же регистр
используем для смещенного порядка е и истинного порядка Р.
Поскольку мантисса результата формируется путем сдвига исходного числа
влево, то регистры R2, R3 используем для размещения мантиссы результатов.
Лабораторная работа №1а
Преобразование целого числа в вещественное
Преобразование целого числа в вещественное реализуется по формуле:
[pic].
Структурная схема преобразования выглядит следующим образом:
[pic].
Алгоритм реализации каждого блока в отдельности: блок 1 блок 2
[pic] [pic]
блок 3 блок 4
[pic] [pic].
Программная реализация данного преобразования. a1 equ -100 init_sp equ 40h dseg org 30h x:ds 2 y:ds 3 cseg org 0000h mov sp,#(init_sp-1) mov x,#low(a1) mov x+1,#high(a1)
mov r0,#x mov r1,#y call bb nop
org 100h bb: mov a,@r0 mov r2,a inc r0 mov a,@r0 mov r3,a
;----------- orl a,r2 jnz mb mov r4,#0 jmp out_bb
;--------- mb: mov a,r3 jnb acc.7,m1 xrl a,#01111111b mov r3,a mov a,r2 cpl a add a,#1 mov r2,a jnc m1 inc r3 m1: mov a,r3 mov c,acc.7 mov f0,c
;-------------- mov r4,#0 ;j=0 m3:clr c mov a,r2 rlc a mov r2,a mov a,r3 rlc a mov r3,a inc r4 jnb acc.7,m3 clr c mov a,#15 subb a,r4 add a,#127 mov r4,a
mov c,psw.5 rrc a mov r4,a mov a,r3 mov acc.7,c mov r3,a mov a,r2 out_bb: mov @r1,a inc r1 mov a,r3 mov @r1,a inc r1 mov a,r4 mov @r1,a ret
Лабораторная работа №1б
Преобразование вещественного числа в целое.
Структурная схема данного преобразования выглядит следующим образом:
[pic].
Программная реализация преобразования:
init_sp equ 40h dseg org 20h x:ds 3 org 28h y:ds 2 cseg org 0000h mov sp,#(init_sp-1) mov x,#00h mov x+1,#0c8h mov x+2,#042h
mov r0,#x mov r1,#y call bb nop
org 100h bb:mov a,@r0 mov r2,a inc r0 mov a,@r0 mov r3,a inc r0 mov a,@r0 mov r4,a
clr c mov a,r4 rlc a mov f0,c mov r4,a mov a,r3 mov c,acc.7 setb acc.7 mov r3,a mov a,r4 mov acc.0,c mov r4,a jz exit clr c
mov a,r4 subb a,#127 jc exit mov a,#143 subb a,r4 jc exit mov a,r4 subb a,#127 mov r4,a mov a,#15 subb a,r4 mov r4,a
m1: clr c mov a,r3 rrc a mov r3,a mov a,r2 rrc a mov r2,a djnz r4,m1
jnb f0,m10 ret mov a,r2 cpl a addc a,#1 mov r2,a mov a,r3 cpl a addc a,#0 mov r3,a mov a,r2 mov @r1,a inc r1 mov a,r3 mov @r1,a exit: