Контрольная работа по "Информатике"

Автор работы: Пользователь скрыл имя, 03 Ноября 2013 в 21:46, курсовая работа

Описание работы

В заданной РЭС осуществить управляющую функцию по одному из заданных параметров с помощью контроллера, построенного на МПК, разработать электрическую принципиальную схему проектируемого контроллера и составить программу (драйвер) реализуемую управляющую функцию на языке Ассемблер заданного МПК.
В каждом конкретном случае разработчик должен определить, какая часть названных средств и в каком объеме может удовлетворять поставленной задаче. Наиболее распространенной и общей для одноплатных микроконтроллеров является структура с тремя шинами, представленная на рис. 1.1. Шиной системы называют физическую группу линий передачи сигналов, имеющих схожие функции в рамках системы.

Файлы: 1 файл

К1.doc

— 491.50 Кб (Скачать файл)

sub ah,dh ; словами кол-ва сдвигов  меньшей мантиссы

mov P,ch ; Занесение в P большего  порядка

mov al,dl ;      \

mov bl,[di] ; В AX,BX заносится меньшее число

mov bh,[di+1] ;/

mov SIGL,al ; Сохранение знака меньшего  числа

mov dl,[si] ; В CX,DX заносится большее число

mov dh,[si+1] ; (по модулю)

mov SIGN,cl ; Сохранение знака результата

jmp @L2

;

; 2.2. Порядок X меньше порядка Y (Px < Py) (CH) < (DH).

@L1:

mov ah,dh ; Нахождение разности  порядков или другими

sub ah,ch ; словами кол-ва сдвигов  меньшей мантиссы.

mov P,dh ; Занесение в P большего  порядка

mov al,cl ;\

mov bl,[si] ; В AX,BX заносится меньшее число

mov bh,[si+1] ;/

mov SIGL,al ; Сохранение знака  меньшего числа

mov cl,dl ;      \

mov dl,[di] ; В CX,DX заносится большее число

mov dh,[di+1] ;/ (по модулю)

mov SIGN,cl ; Сохранение знака результата

;

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

;

; 3.1. Перевод трех байт мантиссы меньшего числа (al,bx)

; из прямого кода в дополнительный

@L2:

sal al,1 ; бит (C) ¬ (регистр al) ¬ 0

jae @L3 ; Переход к метке @L3, если (C) = 0, т.е.

; число в регистрах (al,bx) - неотрицательное

rcr al,1 ; Возврат "1" из бита (C) в старший бит (al).

not bx ;   \

not al ; Перевод в ДК

add bx,1 ; отрицательного числа в  регистрах (al,bx)

adc al,0 ;/

jmp @L4

@L3:

rcr al,1 ; Возврат "0" из бита (C) в старший бит (al).

add al,80H ; Принудительная  установка старшего бита

; регистра (al) в "1" (его вес = 1/2)

;

; 3.2. Перевод трех байт мантиссы большего числа (cl,dx)

; из прямого кода в дополнительный

@L4:

sal cl,1 ; бит (C) ¬ (регистр cl) ¬ 0

jae @L5 ; Переход к метке @L5, если (C) = 0, т.е.

; число в регистрах  (cl,dx) - неотрицательное

rcr cl,1 ; Возврат "1" из бита (C) в старший бит (cl)

not dx ;\

not cl ; Перевод в ДК

add dx,1 ; отрицательного числа в  регистрах (cl,dx)

adc cl,0 ;/

jmp @L6

@L5:

rcr cl,1 ; Возврат "0" из бита (C) в старший бит (cl)

add cl,80H ; Принудительная установка  старшего бита

; регистра (al) в "1" (его вес = 1/2)

;

; 4. Значение полученной разности используется как количество

; сдвигов вправо мантиссы числа с меньшим порядком

@L6:

cmp ah,0

je @L7

mov ch,SIGL ;\

sal ch,1 ; Сдвиг вправо

rcr al,1 ; меньшего числа

rcr bx,1 ;/

dec ah ; Уменьшение на 1 значения  счетчика сдвигов

jmp @L6

;

; 5. Сложение мантисс по правилам сложения чисел с фиксиро-

; ванной запятой

@L7:

add bx,dx ; Сложение

adc al,cl ; мантисс

; 6. Преобразование мантиссы результата в прямой код

@L8:

mov cl,SIGN ; Дублирование

sar cl,1 ; знака результата

sal cl,1 ; Проверка знака результата (числа с большим

; порядком)

jae @L9 ; Переход к метке  @L9, если (C) = 0, т.е.

; если мантисса суммы неотрицательна

sub bx,1 ;\

sbb al,0 ; Перевод отрицательной мантиссы  суммы в

not bx ; (al,bx) из дополнительного кода  в прямой

not al ;/

;

; 7. Нормализация мантиссы результата и при необходимости

; коррекция значения его порядка

@L9:

sal bx,1

rcl al,1

jb @L10

sub ah,1

jmp @L9

;

; 8. Получение порядка и окончательного результата

@L10:

add ah,P

;

sal cl,1 ; бит (C) ¬ 0, (регистр al)¬ 0

rcr ax,1

rcr bx,1

;

mov [si],bl ;\

mov [si+1],bh ; Пересылка результата

mov [si+2],al ; в память

mov [si+3],ah ;/

ret

;

FSUMMA ENDP

;=================================================

; подпрограмма преобразования целого числа в формат ПЗ

;=================================================

ITOF PROC  FAR

;

MOV  BH,0  ;Сбросить регистр ВН

MOV  AX,SI  ;Проверить исходное число

OR  AX,BX ;на ноль

JZ  EXIT  ;Число равно нулю

MOV  AL,BL ;Сохранить знак в регистре AL

TEST  AL,80H ;Проверить знак числа

JC  NOC  ;Число положительное

NOT  SI  ;Число отрицательное,

NOT  BL  ;образовать его

ADD  SI,1  ;абсолютное значение

JNC  NOC  

INC  BL

NOC: MOV  BH,151 ;Исходный порядок

SLOOP: TEST BL,80H ;Проверить старший бит

JNZ  FORM ;Нормализация закончена

SHL  SI,1  ;Сдвинуть число влево

RCL  BL,1

DEC  BH  ;Декремент порядка

JMP  SLOOP ;Повторять нормализацию

FORM: ADD AL,AL ;Передать знак во флажок CF

RCR  BH,1  ;Знак числа на месте

RCR  AH,1  ;Младший бит прядка АН7

OR  AH,7FH ;Образовать маску

AND  BL,AH ;Образовать второй байт числа

EXIT: RET    ;Возврат

ITOF ENDP

LINK2   ENDP

;-----------------------------------

CSEG    ENDS

        END     LINK2

 

СПИСОК ЛИТЕРАТУРЫ

 

  1. Цифровые устройства и микропроцессоры. Методические указания и задания на контрольную и курсовую работы для студентов заочного факультета
  2. Микропроцессоры. Конспект лекций./В.А.Швец
  3. Программирование арифметических операций в микропроцессорах./В.К. Злобин, В.Л.Григорьев
  4. Микропроцессоры./К.Г.Самофалов, О.В.Викторов, А.К. Кузняк
  5. Технические средства микропроцессорных систем./Дж.Коффрон



Информация о работе Контрольная работа по "Информатике"