У нас: 141825 рефератів
Щойно додані Реферати Тор 100
Скористайтеся пошуком, наприклад Реферат        Грубий пошук Точний пошук
Вхід в абонемент


Інститут менеджменту та економіки "Галицька Академія" Кафедра комп'ютерних та телекомунікаційних систем

Тема - Проектування програмного та апаратного забезпечення для обчислювального пристрою приймання, обробки та передавання даних на базі персонального комп'ютера.

В курсовому проекті проаналізований алгоритм приймання, обробки та передавання даних. Розроблена асемблер-програмама та описана принципово електрична схема блоку передавання.

Summary

In a course project there is the analysed algorithm of acceptance, treatment and data communication . asembler-programama is developed that described electric chart of principle of block of transmission.

ЗМІСТ

1. Опис блок – схеми……………………………………………………5 . 2. Розробка блок-схеми алгоритму........................................................7

3. Розробка Assembler- програми...........................................................9

4. Опис принципової електричної схеми блоку приймання.............14

1. Опис блок-схеми.

Оператор 1 – Початок програми.

Оператор 2 – Настроювання регістру DS на сегмент даних.

Оператор 3 – Настроювання СОМ порту на: швидкість передачі

даних 2400 біт/сек, із параметрами : перевірка

непарності, 2 стоп-біти, 8 біт даних.

Оператор 4 – Ініціалізація циклу.

Оператор 5 – Очікування прийняття 1 байта з СОМ порту.

Оператор 6 – Якщо байт не прийнято, то повторення очікування.

Оператор 7 – Запису байта даних до і-тої комірки масиву.

Оператор 8 – Обнулення регістрів SI i DI, занесення до регістру

СХ кількості очікуваних байт.

Оператор 9 – Ініціалізація циклу обробки даних.

Оператор 10 – 256 байт даних починаючи з нульової адреси

зсувом вліво і додаємо до них 256 байт даних

починаючи з 256 адреси зсунутих вправо.

Оператор 11– Запис байта даних до і-тої комірки масиву.

Оператор 12– Утворення нових адрес масивів.

Оператор 13 – Створення і відкриття файлу f1.

Оператор 14 – Запису даних з комірки масиву А починаючи

з 0 адреси в файл f1.

Оператор 15 – Створення і відкриття файлу f2.

Оператор 16 – Запису даних з комірки масиву А починаючи

з 256 адреси в файл f2.

Оператор 17 – Створення і відкриття файлу f3.

Оператор 18 – Запису даних з комірки масиву А починаючи

з 512 адреси в файл f3.

Оператор 19 – В регістр DX занесення адреси комірки пам’яті

куди будуть записані дані.

Оператор 20 – Обнулення регістру ВХ , а в регістр СХ

занесення кількості байт

Оператор 21 – Ініціалізація циклу.

Оператор 22 – В регістр АL занесення даних з масиву А

починаючи з 512 адреси.

Оператор 23 – запису даних з регістру А L до 16-розрядного

регістру зовнішніх пристрої , які адресуються

регістром DX.

Оператор 24 – Збільшення регістру ВХ на одиницю.

Оператор 25 – Закриття файлів.

Оператор 26 – кінець програми.

2.Розробка блок – схеми алгоритму.

3. Розробка Assembler – прграми.

DOSSEG

.model small

.stack 100h

.data

f1 db 'c:\f1.txt',0 ; вказування шляху до файлу 1

f2 db 'c:\f2.txt',0 ; вказування шляху до файлу 2

f3 db 'c:\f3.txt',0 ; вказування шляху до файлу 3

a db 1024 dup(0) ; оголошення масиву вхідних елементів - а

var1 dw 0 ; ідентифікатор файлу f1

var2 dw 0 ; ідентифікатор файлу f2

var3 dw 0 ; ідентифікатор файлу f3

.code

.startup

mov ax,@data

mov ds,ax ; настройка регістру ds на сегмент даних

;настройка COM1

mov ah,0h ; ініціалізація СОМ порту

mov al,1010111b ; в регістр al занесення режиму роботи СОМ порту .

; ( швидкість передачі даних 2400 біт/сек.,

2 стоп біта, 8 байт)

mov dx,0 ; в регістр dx занесення 0 ( настройка СОМ1)

int 14h ; виклик переривання int 14h BIOS

;Приймання даних у масив

mov cx,512 ; в регістр СХ занесення 512 байт

mov bx,0 ; обнулення регістру bx

m1:

mov ah,02h ; функція приймання 1-го байту даних

mov dx,0 ; в регістр dx занесення 0 ( настройка СОМ1)

int 14h ;виклик переривання BIOS

cmp ah,0 ; формування затримки ( перевірка на те, чи

; прийшов байт)

jne m1 ;якщо байт не прийшов, то повернення на m1

mov ah,02h ; функція виводу на екран

mov dl,al ; в регістр dl занесення прийнятого байта

з регістру al

int 21h ; виклик переривання DOS

mov a.[bx],al ; зберігання прийнятих даних в масиві а

inc bx ; збільшення регістру bx на 1

loop m1 ; цикл поки не прийнято 512 байт

;формування даних для запису в 3-й файл

mov cx,512 ; в регістр СХ занесення 512 байт

mov si,0 ; обнулення регістру si

mov di,0 ;обнулення регістру dx

m3:

xor ax,ax ; обнулення регістру ax

xor bx,bx ; обнулення регістру bx

mov al,a.[si] ; в регістр al занесення даних з комірки масиву а

; починаючи з адреси 0

sub al,30h ; переведення даних в десяткові числа з ASCII коду

shl ax,1 ; зсув регістру ax вліво

mov bl,a.[256+si] ; в регістр bl занесення даних з комірки масиву a

; починаючи з адреси 256

sub bl,30h ;переведення даних в десяткові числа з ASCII коду

shr bx,1 ; зсув регістру bx вправо

add ax,bx ; вміст регістру bx додаємо до регістру ax

add ax,30h ; переведення даних в ASCII код

mov word ptr a.[512+di],ax ; занесення даних з регістру ах в комірку

; масиву а починаючи з адреси 512

add di,2 ; до регістру di додаємо 2

inc si ; збільшення регістру si на 1

loop m3 ; цикл поки не прийнято 512 байт

;відкриття файлів

mov ah,3ch ; функція відкриття файлу

mov cx,00h ; в регістр СХ занесення атрибутів файлу

; (00 h – звичайний файл )

mov dx,offset f1 ; в регістр dx занесення адрес рядка, що містить

; шлях


Сторінки: 1 2