Створення драйвера до модема, підключеного до COM-порту

Послідовний асинхронний адаптер. Основні команди модему, принципи програмування модемів. Протоколи передачі файлів. Основні способи з'єднання комп'ютерів для обміну інформацією. Безпосередній зв'язок через асинхронний порт. Зв'язок через локальні мережі.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык украинский
Дата добавления 10.01.2013
Размер файла 32,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

  • ЗМІСТ
    • Вступ
      • Розділ 1. Послідовний асинхронний адаптер
      • Розділ 2. Типи модемів
      • Розділ 3. Опис програми (модульна структура).
      • Розділ 4. Результати виконання програми
      • Висновок.
      • Список використаної літератури
      • Додаток А
      • Додаток В

Вступ

Останнім часом модеми стають невід'ємною частиною комп'ютера. Установивши модем на свій комп'ютер, ви фактично відкриваєте для себе новий світ. Ваш комп'ютер перетворюється з відособленого комп'ютера в ланку глобальної мережі.

Модем дозволить вам, не виходячи з будинку, одержати доступ до баз даних, що можуть бути передані від вас на багато тисяч кілометрів, розмістити повідомлення на BBS (електронній дошці об'явлений), доступної іншим користувачам, скопіювати з тієї ж BBS цікавлячи вас файли, інтегрувати домашній комп'ютер у мережу вашого офісу, при цьому (не вважаючи низькою швидкість обміну даними) створюється повне відчуття роботи в мережі офісу. Крім того, скориставшись глобальними мережами (RelCom, FidoNet) можна приймати і посилати електронні листи не тільки усередині міста, але фактично в будь-який кінець земної кулі. Глобальні мережі дають можливість не тільки обмінюватися поштою, але і брати участь у всіляких конференціях, одержувати новини практично по будь-якій цікавлячий вас тематиці.

Існує три основних способи з'єднання комп'ютерів для обміну інформацією:

- безпосередній зв'язок, через асинхронний порт;

- зв'язок з використанням модему;

- зв'язок через локальні мережі.

У даному випадку розглядається вирішення проблеми зв'язку з використанням модему.

Розділ 1. Послідовний асинхронний адаптер

комп'ютер модем передача файл

Практично кожен комп'ютер обладнаний хоча б одним послідовним асинхронним адаптером. Звичайно він являє собою окрему плату або ж розташований прямо на материнській платі комп'ютера. Його повна назва - RS-232-C. Кожен асинхронний адаптер звичайно містить кілька портів, через які до комп'ютера можна підключати зовнішні пристрої. Кожному такому порту відповідає кілька регістрів, через які програма одержує до нього доступ, і визначена лінія IRQ (лінія запиту переривання) для сигналізації комп'ютеру про зміну стану порту. Кожному порту привласнюється логічне ім'я (COM1,COM2,і т.д.).

Інтерфейс RS-232-C розроблений асоціацією електронної промисловості ( EIA ) як стандарт для з'єднання комп'ютерів і різних послідовних периферійних пристроїв.

Комп'ютер IBM PC підтримує інтерфейс RS-232-C не повною мірою; скоріше роз'їм, позначений на корпусі комп'ютера як порт послідовної передачі даних, містить деякі із сигналів, що входять в інтерфейс RS-232-C і мають відповідні цьому стандарту рівні напруги.

В даний час порт послідовної передачі даних використовується дуже широко. От далеко не повний список застосувань:

- підключення миші;

- підключення графобудівників, сканерів, принтерів, дигитайзеров;

- зв'язок двох комп'ютерів через порти послідовної передачі даних з використанням спеціального кабелю і таких програм, як FastWire II чи Norton Commander;

- підключення модемів для передачі даних по телефонних лініях;

- підключення до мережі персональних комп'ютерів;

Послідовна передача даних означає, що дані передаються по єдиній лінії. При цьому біти байта даних передаються по черзі з використанням одного проводу. Для синхронізації групи бітів даних звичайно передує спеціальний стартовий біт, після групи бітів випливають біт перевірки на парність і один чи два стопових біти. Іноді біт перевірки на парність може бути відсутній.

Використання біта парності, стартових і стопових битов визначають формат передачі даних. Очевидно, що передавач і приймач повинні використовувати той самий формат даних, інакше обмін не можливий.

Інша важлива характеристика - швидкість передачі даних. Вона також повинна бути однакової для передавача і приймача.

Швидкість передачі даних звичайно виміряється в бодах ( на прізвище французького винахідника телеграфного апарата Emile Baudot - Э.Бодо). Боды визначають кількість переданих битов у секунду. При цьому враховуються і старт/стопні біти, а також біт парності.

1.1 Апаратна реалізація

Комп'ютер може бути оснащений одним чи двома портами послідовної передачі даних. Ці порти розташовані або на материнській платі, або на окремій платі, що вставляється в слоты розширення материнської плати.

Бувають також плати, що містять чотири чи вісім портів послідовної передачі даних. Їх часто використовують для підключення декількох чи комп'ютерів терміналів до одному, центральному комп'ютеру. Ці плати мають назва "мультипорт".

Входи TD і RD використовуються пристроями DTE і DCE по-різному. Пристрій DTE використовує вхід TD для передачі даних, а вхід RD для прийому даних. І навпаки, пристрій DCE використовує вхід TD для прийому, а вхід RD для передачі даних. Тому для з'єднання термінального пристрою і пристрою зв'язку висновки їхніх рознімань необхідно з'єднати прямо.

Розглянемо процес підтвердження зв'язку між комп'ютером і модемом. На початку сеансу зв'язку комп'ютер повинний упевниться, що модем може зробити виклик (знаходиться в робочому стані). Потім, після виклику абонента, модем повинний повідомити комп'ютеру, що він зробив з'єднання з вилученою системою.

Існує більш високий рівень, що використовується для керування швидкістю обміну даними, але він також реалізується апаратно. Практично керування швидкістю обміну даними (керування потоком) необхідно, якщо виробляється передача великих обємів даних з високою швидкістю. Коли одна система намагається передати дані з більшою швидкістю, чим вони можуть бути оброблені приймаючою системою, результатом може стати втрата частини переданих даних. Щоб запобігти передачі більшого числа даних, які можуть бути оброблені, використовують керування зв'язком, називаним як "керування потоком".

Однак на практиці не все так просто. З'єднати комп'ютер і модем не складає труднощів, тому що інтерфейс RS-232-C саме для цього і призначений. Але якщо ви захочете зв'язати разом два комп'ютери за допомогою такого ж кабелю, що ви використовували для зв'язку модему і комп'ютера, то у вас виникнуть проблеми. Щоб вирішити всі ці проблеми для з'єднання двох пристроїв використовується спеціальний кабель, у побуті називаний нуль-модемом.

При передачі даних на великі відстані без використання спеціальної апаратури через перешкоди, що наводяться електромагнітними полями, можливе виникнення помилок. Унаслідок цього накладаються обмеження на довжину сполучного кабелю між пристроями.

Офіційне обмеження по довжині для сполучного кабелю по стандарті RS-232-C складає 15,24 метра. Однак на практиці ця відстань може бути значно більше. Вона безпосередньо залежить від швидкості передачі даних.

110бод - 1524м / 914,4м

300бод - 1524м / 914,4м 1200бод - 914,4м / 914,4м 2400бод - 304,8м / 152,4м 4800бод - 304,8м / 76,2м 9600бод - 76,2м / 76,2м

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

Рівні напруги на лініях разьема складають для логічного нуля -15..-3 вольти, для логічної одиниці +3..+15 вольт. Проміжок від -3 до +3 вольтів відповідає невизначеному значенню.

1.2 Програмування адаптера

Порти асинхронного адаптера

Перший адаптер COM1 має базова адреса 3F8h і займає діапазон адрес від 3F8h до 3FFh. Другий адаптер COM2 має базова адреса 2F8h і займає адреси 2F8h..2FFh.

Асинхронні адаптери можуть виробляти переривання:

COM1,COM3 - IRQ4

COM2,COM4 - IRQ3

Мається 7 основних регістрів для керування портами:

а) Регістр даних

Максимальна швидкість обміну інформацією, котру можна досягти при використанні асинхронного адаптера, досягає 115200 бод, що приблизно відповідає 14 Кбайт у секунду.

б) Регістр керування перериваннями

в) Регістр ідентифікації переривання

Зчитуючи його вміст, програма може визначити причину переривання

г) Керуючий регістр

д) Регістр керування модемом

е) Регістр стану лінії

ж) Регістр стану модему

Ініціалізація асинхронного адаптера

Перше, що повинна зробити програма, що працює з асинхронним адаптером - установити формат і швидкість передачі даних. Після завантаження операційної системи для асинхронних адаптерів установлюється швидкість 2400 бод, не виконується перевірка на парність, використовуються один стоповий і восьмибитовая довжина переданого символу. Можна змінити цей режим командою MS-DOS MODE.

Розділ 2. Типи модемів

В даний час випускається величезну кількість усіляких модемів, починаючи від найпростіших, що забезпечують швидкість передачі близько 300 біт/сек, до складних факс-модемних плат, що дозволяють вам послати з вашого комп'ютера чи факс звуковий лист у будь-яку крапку світу.

На даний час такі модеми широко використовуються в усьому світі для зв'язку персональних комп'ютерів IBM PC/XT/AT, PS/2 через телефонні лінії.

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

Типовий модем містить наступні компоненти: спеціалізований мікропроцесор, керуючий роботою модему, оперативну пам'ять, що зберігає значення регістрів модему вхідну/вихідну інформацію, постійну пам'ять, динамік, що дозволяє виконувати звуковий контроль зв'язку, а також інші допоміжні елементи ( трансформатор, резистори, конденсатори). Якщо у вас досить сучасний модем, то він швидше за все додатково містить електричну перепрограмомувальну постійну пам'ять, у якій може бути збережена конфігурація модему навіть при вимиканні живлення.

Щоб модеми могли обмінюватися один з одним інформацією, треба, щоб вони використовували однакові способи передачі даних по телефонних лініях. Для розробки стандартів передачі даних був створений спеціальний міжнародний консультативний комітет з телеграфії і телефонії (CCITT) і прийняті наступні рекомендації:

CCITT V.21 - 300 bps. , призначений для передачі даних по виділених лініях, що комутируються.

CCITT V.22 - 1200 bps. ( комп'ютер передає модему дані в асинхронному режимі) .

CCITT V.22bis - 2400 bps.

CCITT V.23 - 600/1200 bps. ( використовує метод частотної модуляції.

Bell- американський стандарт ,що не сумісний з вищеназваними .

Програмування модемів

Після випуску американською фірмою Hayes модемів серії Smartmodem, система команд, використана в ній, стала деяким стандартом, якого дотримують інші фірми - розроблювачі модемів. Система команд, застосовувана в цих модемах, зветься hayes-команд, чи AT-команд.

З часу випуску перших AT-сумісних модемів набір їхніх команд трохи розширився, але всі основні команди залишилися без зміни.

Усі команди, передані комп'ютером модему, треба починати префіксом AT (ATtention - увага) і закінчувати символом повернення каретки ( <CR> ). Тільки команда А/ і Escape-послідовність "+++" не вимагають для себе префікса AT.

Після префікса AT можуть йти одна чи відразу кілька команд. Для ясності ці команди можуть бути відділені друг від друга символами - пропуску , тире, дужками. У більшості випадків команди можуть бути написані як заголовними, так і малими літерами.

При передачі модему команд вони спочатку заносяться у внутрішній буфер.

Якщо ви припуститися помилки при наборі команди, то її можна виправити, використовуючи клавішу BackSpace.

Після виконання кожної команди модем посилає назад комп'ютеру відповідь у виді чи числа слова. Ця відповідь означає, чи виконана чи команда відбулася помилка.

Якщо у вас зовнішній модем, то на його лицьовій панелі знаходиться вісім світлових індикаторів. Хоча їхнє розташування на різних моделях може мінятися, їхні позначення є стандартними:

MR Modem Ready

TR Terminal Ready

CD Carrier Detect

SD Send Data

RD Receave

HS High

AA Auto

OH Off

Основні команди модему:

AT - Початок (префікс) командного рядка.

A - Автоответ.

A/ - Модем повторює останню введену команду.

Bn - Команда робить вибір стандарту, відповідно до якого буде відбуватися обмін даними між модемами.

Ds - Команда використовується для набору номера.

, - Символ коми викликає паузу при наборі номера

; - Символ крапки з коми, якщо він знаходиться наприкінці командного рядка, переводить модем після набору номера в командний режим.

@ - Модем очікує пятисекундной тиші на лінії протягом заданого проміжку часу.

! - Якщо знак ! коштує перед знаками послідовності набору, модем переходить у стан ON HOOK (кладе трубку) на 1/2 секунди, а потім знову переходить у стан OFF HOOK ( знімає трубку).

S - Модем набирає телефонний номер, записаний у його пам'яті.

R - Після набору номера переводить модем у режим автовідповіді.

Fn - Переключення між дуплексним/напівдуплексним режимами.

Hn - Ця команда використовується для керування телефонною лінією.

In - Видає ідентифікаційний код модему і контрольну суму вмісту пам'яті модему.

Ln - Установка голосності сигналу внутрішнього динаміка: n=0,1 відповідає низької голосності, n=2 - середньої і n=3 - максимальної.

Qn - Керування відповіддю модему на AT-команди.

On - Команда переводить модем з командного режиму в режим передачі даних.

Sr? - Читання вмісту регістра модему, що має номер r.

Sr=n - Запис у регістр модему з номером r числа n.

Vn - Робить вибір виду відповіді модему на AT-команди.

Yn - Спосіб відключення модему від лінії.

Z - Скидає конфігурацію модему.

+++ - Escape-послідовність, використовувана для переходу в командний режим роботи модему.

&F - модем установлює конфігурацію, записану в постійну пам'ять.

&Gn - Включення/вимикання захисної частоти.

&Ln - Вид лінії зв'язку.

&Mn - Установка асинхронно/синхронного режиму роботи.

&Pn - Установка імпульсного коефіцієнта набору номера відповідно до різних стандартів.

&W - Модем записує свою поточну конфігурацію в енергонезалежну пам'ять.

&Zn - Використовується для запису телефонного номера в енергонезалежну пам'ять модему. .

2.1 Основні принципи програмування модемів

Доступ до модему відбувається через послідовний асинхронний порт. При цьому для передачі модему команд їх необхідно просто записати в регістр даних COM-порту, на якому знаходиться модем. Відповідь від модему також надходить через послідовний порт. Передаючи модему команди, його можна про ініціювати, перевести в режим автовідповіді чи змусити набрати номер.

Отже, після встановлення зв'язку з вилученим модемом, комунікаційна програма може починати обмін даними. Обмін даними так само, як і передача команд, здійснюється через COM-порт. Потім за допомогою спеціальної Escape-послідовності можна переключити модем з режиму передачі даних назад у командний режим і покласти трубку, розірвавши зв'язок з вилученим модемом.

Послідовність дій для встановлення зв'язку:

а)Ініціалізація COM-порту

б)Ініціалізація модему

в)З'єднання з вилученим модемом

г)Очікуємо відповідь від модему

д)Підключення модему в командний режим

е)Скидаємо сигнали на лініях DTR і RTS

2.2 Протоколи обміну даними

Протоколи корекції помилок нижнього рівня

При передачі даних по зашумленим телефонних лініях завжди існує імовірність, що дані, переданим одним модемом, будуть прийняті іншим модемом у перекрученому виді. Наприклад, деякі передані байти можуть змінити своє значення або навіть просто зникнути. Для того, щоб користувач мав гарантії, що його дані передані без помилок, використовуються протоколи корекції помилок.

Загальна форма передачі даних по протоколах з корекцією помилок наступна: дані передаються окремими блоками (пакетами) по 16-20000 байт, у залежності від якості зв'язку. Кожен блок забезпечується заголовком, у якому зазначена перевірочна інформація, наприклад контрольна сума блоку. Протоколи корекції помилок можуть бути реалізовані як на апаратному рівні, так і на програмному. Апаратний рівень реалізації більш ефективний. Швидкодія апаратної реалізації протоколу MNP приблизно на 30% вище, ніж програмної.

MNP-протоколи

MNP (Microcom Network Protocols) - серія найбільш розповсюджених апаратних протоколів, уперше реалізована на модемах фірми Microcom. Ці протоколи забезпечують автоматичну корекцію помилок і компресію переданих даних.(зараз відомі 10 видів цих підпротоколів).

Режими MNP-модемів.

MNP-модем забезпечує наступні режими передачі даних:

- Стандартний режим.

- Режим прямої передачі.

- Режим з корекцією помилок і буферізациєй.

- Режим з корекцією помилок і автоматичним настроюванням.

Протоколи V.42 і V.42bis.

Протокол з корекцією помилок і перетворенням асинхронний-синхронний. Протокол використовує метод компресії, при якому визначається частота появи окремих символьних рядків і відбувається їхня заміна на послідовності символів меншої довжини.

2.3 Протоколи передачі файлів

На відміну від протоколів нижнього рівня дані протоколи дозволяють організувати прийом і передачу файлів(3 основних):

ASCII.

XModem.

Найбільш поширені три різновиди протоколу XModem:

- оригінальний протокол Xmodem

- Xmodem c CRC

- 1K Xmodem Kermit.

Алгоритм реалізації :

Найбільш наглядно покрокове виконання поставленої задачі можна прослідкувати на такому прикладі :

В самому простому випадку взаємодія двох комп'ютерів може бути реалізована за допомогою драйвера модемів на основі інтерфейсу Rs-232 С.

Драйвер СОМ-порта разом з контролером СОМ - порта працюють злагоджено. Однак при цьому роль пристрою керування ПУ виконує контролер і драйвер СОМ-порта другого комп'ютера Разом вони забезпечують передачу по кабелю між комп'ютерами одного байта інформації.

Драйвер комп'ютера В періодично опитує признак завершення прийому, встановлений контролером при правильно виконаній передачі даних, і при його появі рахує прийнятий байт із буфера контролера в оперативну пам'ять, роблячи його тим самим доступними для програм комп'ютера В. В деяких випадках драйвер викликається асинхронно ,при перериваннях контролера.

Таким чином у розпорядженні програм комп'ютерів А і В і засід для передачі одного байту інформації. Але наша задача значно тяжча,оскільки передається не один байт , а певна частина заданого файлу. Всі зв'язані з цим додаткові проблеми повинні вирішувати програми більш високого рівня , ніж драйвери СОМ -портів.

Для того щоб передати повідомлення комп'ютеру В , додаток А звертається до драйвера СОМ -порта ,повідомляючи йому адрес в оперативній памяті , по якому драйвер знаходить повідомлення і потім передає його байт за байтом додатку В. Додаток В читає потрібну область файла і з допомогою дравера СОМ -порта передає зчитані дані по каналу зв'язку до комп'ютера А.

Розділ 3. Опис програми (модульна структура)

Дана програма побудована на основі модульного принципу. Тобто розбита на частини ,кожна з яких виконує певну задачу .Основні модулі програми :

Встановлення відео атрибутів :

REV_VIDEO EQU 70H ;

NORM_VIDEO EQU 07H

BOLD EQU 0FH

BOLD_UNDERL EQU 09H

BLINK EQU 87H

;-------------------------- спеціальний адаптер порта COM- ports

BASE_ADDRESS equ 280h ; base address of card i.e. COM3

PORT_DISPLACEMENT equ 8 ; offset from COMn to COMn + 1 for card

MCONT equ 4

LSTAT equ 5

MSTAT equ 6

;статус модема

D_CTS equ 01h

D_DSR equ 02h

TERI equ 04h

D_RLSD equ 08h

CTS equ 10h

DSR equ 20h

RI equ 40h

RLSD equ 80h

;;-------------------- статус строки

DATA_READY equ 01h

OVERRUN equ 02h

PARITY equ 04h

FRAMING equ 08h

BREAK equ 10h

THRE equ 20h

TSRE equ 40h

;;-------------------- контролер модема

DTR equ 01h

RTS equ 02h

code segment

assume cs:code, ds:code, es:code, ss:code

org 100h

; 'при натисненні “с” - змінюються значення регістрів адресу наступного порта

cmp port + 1, '1' ; was port 1?

jne cp_10 ; no - check for 10

mov modem_control, 02fch ; yes - set addresses for COM2

mov line_status, 02fdh

mov modem_status, 02feh

inc port + 1 ; set display digit

ret ; and done

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

;ця процедура зберігає контекст відео ram буфер адресу

;

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

mov dx, crt_control_port

cld

push ds

push ds

pop es

mov di, offset screen_storage

mov ax, video_ram

mov ds, ax

;cmp ax, 0b800h

;jne save_10

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

;процедура відновлюює значення відео RAM

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

cld

push ds

pop es

mov si, offset screen_storage

mov ax, video_ram

mov es, ax

cmp ax, 0b800h

jne res_10

процедура запису ASCIIZ значення строки в порт ;

xor ax, ax

mov al, row ;

mov cl, 80 ;

mul cl ;

xor bh, bh

mov bl, col

add ax, bx

shl ax, 1 ;

mov di, ax ;

еnd

Розділ 4. Результати виконання програми

D:\BORLANDC\BIN>tasm.exe comdebug.asm

Turbo Assembler Version 3.1 Copyright (c) 1988, 1992 Borland International

Assembling file: comdebug.asm

**Fatal** Command line: Can't locate file: comdebug.asm

Error messages: 1

Warning messages: None

Passes: 1

Remaining memory: 407k

D:\...sembler\Новая папка (2)\comdebug>

Отже на основі цієї інформації можна зробити висновок ,що драйвер написаний правильно , з урахуванням всіх вимог до написання такого роду програм .Висновок ґрунтується на тому , що система не може локалізувати даний файл , тобто виконати його на окремому комп'юпері ,що не має провідникових засобів зв'язку з зовнішнім світом . Таким чином ми не можемо створити OBJ файл і на основі нього за допомогою tlink.exe виконуючого файлу(com,exe …).Але я ще раз наголошую , що на основі повідомлення tasm.exe :

**Fatal** Command line: Can't locate file: comdebug.asm

можна судити про працездатність програми .

Висновок

Існує безліч варіантів використання модему(зокрема комунікаційні програми - MTE, Telix, Comit, Bitcom і т.д.

Основні параметри по яких оцінюються комунікаційні програми є: програмна емуляція протоколів корекції помилок (MNP), наявність різноманітних протоколів обміну файлами, інтерфейс із користувачем. Найбільш поширені комунікаційні програми на даний час:(MTE.М; Telix;Comi;Bitcom).

BBS ( Bulletin Board System ) - це комп'ютер, оснащений одним чи декількома модемами, на якому виконується спеціальна програма. Ця програма дає можливість вилученим користувачам зв'язуватися з нею по телефонних лініях і виконувати обмін файлами і повідомленнями.

Якщо ви успішно установили модем на своєму комп'ютері, то у вас виникне природне бажання куди-небудь подзвонити. Для цього ви можете скористатися будь-як телекомунікаційною програмою - MTE, COMIT, BITCOM. Якщо ваш модем не має апаратної корекції помилок, то краще використовувати MTE чи іншу програму, що має можливість эмуляции MNP (наприклад COMIT).

Maximus організує діалог з користувачем, дозволяє користувачу одержати адресовані йому повідомлення (пошту), відправити пошту іншим користувачам даної станції BBS чи мережі FidoNet (якщо дана станція входить у цю мережу).

Воно означає, що станція є вузлом якої-небудь мережі, наприклад FidoNet, і на ній виконується спеціальна поштова програма FrontDoor. Вам пропонується натиснути два рази на клавішу ESC для завантаження програми Maximus, що і буде далі підтримувати діалог з вами.

Список використаної літератури

1. Бредли Д. Програмирование на языке ассемблера для персональной ЭВМ фирмы IBM :Пер.в анг.-М.;Радио и связь,1988 .-448с

2. Скэнлон Л. Персональне ЭВМ IBM PC и XT.Програмирование на языке ассемблера :Пер.с анг.-М.:Радио ы связь,1991.-336с.

3. Абель П.Язык Ассемблера для IBM PC и програмырования :Пер.с анг.-Мю:Высшая школа ,1992.-477с.

4. Нортон П.Соху Д. Язык ассемблера для IBM PC .Пер.с англ.-М.:Издательство «Компютер «;Финансы и статистика ,1992 .-352с.

5. Использование Turbo Assemblera при розроботке програм .-Киев :»Диалектика»,1994.-288 с.

6. Лямин Л .Макроассемблер МАSМ..-М.-Радио и связь ,1994ю-320с.

Додаток А

push_all macro

push ax

push bx

push cx

push dx

push di

push si

push bp

push ds

push es

pushf

endm

pop_all macro

popf

pop es

pop ds

pop bp

pop si

pop di

pop dx

pop cx

pop bx

pop ax

endm

TRUE equ 1

FALSE equ 0

ESC equ 1

D equ 32

C equ 46

ONE equ 2

NUM_ONE equ 79

ZERO equ 11

NUM_ZERO equ 82

LEFT equ 75

RIGHT equ 77

ALT_SHIFT equ 08h

SCROLL_SHIFT equ 10h

KB_DATA equ 60h

KB_CTL equ 61h

ON equ 1

OFF equ 0

REV_VIDEO EQU 70H ; відео атрибути для настроювання екрану

NORM_VIDEO EQU 07H

BOLD EQU 0FH

BOLD_UNDERL EQU 09H

BLINK EQU 87H

;-------------------------- спеціальний адаптер карти для СОМ -порта

BASE_ADDRESS equ 280h ; базовий адрес порта(i.e. COM3)

PORT_DISPLACEMENT equ 8 ; переривання з COMn до COMn + 1порта

MCONT equ 4

LSTAT equ 5

MSTAT equ 6

;--------------------- статус модема

D_CTS equ 01h

D_DSR equ 02h

TERI equ 04h

D_RLSD equ 08h

CTS equ 10h

DSR equ 20h

RI equ 40h

RLSD equ 80h

;-------------------- статус лінії

DATA_READY equ 01h

OVERRUN equ 02h

PARITY equ 04h

FRAMING equ 08h

BREAK equ 10h

THRE equ 20h

TSRE equ 40h

;-------------------- контролер модема

DTR equ 01h

RTS equ 02h

code segment

assume cs:code, ds:code, es:code, ss:code

org 100h

first:

jmp loader

;jmp tester

ASCII_signature db "COMDEBUG by Peter Shier at TADIRAN Givat Shmuel 01/87"

busy db FALSE

old_int9_off dw 0

old_int9_seg dw 0

graphics db FALSE

video_ram dw 0 ; відео ram сегмент

crt_status_port dw 0

crt_control_port dw 0

start_offset dw 0 ;початкове зміщення екранного сегменту

str_ptr dw 0 ; значення ASCIIZ строки

row db 0 ;

col db 0

attribute db 0 ; очікувані атрибути

screen_storage db 4000 dup(?) ;

modem_control dw 03fch

line_status dw 03fdh

modem_status dw 03feh

port db '01', 0

cursor db DTR

bit db ?, 0

saved_cursor_pos dw ?

main_frame_msg db " C O M D E B U G ", 0

main_frame_1 db "г====================================================================¬", 0

main_frame_2 db "¦ ¦", 0

main_frame_3 db "L====================================================================-", 0

mod_stat_msg_1 db " Modem Status ", 0

mod_stat_msg_2 db "Delta CTS Delta DSR TERI Delta RLSD CTS DSR RI RLSD", 0

mod_stat_frame_1 db "-----------------------------------------------------------¬", 0

mod_stat_frame_2 db "¦ ¦", 0

mod_stat_frame_3 db "L-----------------------------------------------------------", 0

lin_stat_msg_1 db " Line Status ", 0

lin_stat_msg_2 db "Data Ready Overrun Parity Framing Break THRE TSRE", 0

lin_stat_frame_1 db "---------------------------------------------------------¬", 0

lin_stat_frame_2 db "¦ ¦", 0

lin_stat_frame_3 db "L---------------------------------------------------------", 0

mod_ctrl_msg_1 db "Mod Ctrl", 0

mod_Ctrl_msg_2 db "DTR RTS", 0

mod_ctrl_frame_1 db "---------¬", 0

mod_ctrl_frame_2 db "¦ ¦", 0

mod_ctrl_frame_3 db "L---------", 0

instruct_msg_1 db "<- -> Move cursor", 0

instruct_msg_2 db "D Display registers", 0

instruct_msg_3 db "1/0 Raise/lower DTR/RTS", 0

instruct_msg_4 db "C Change com port", 0

instruct_msg_5 db "Esc Exit", 0

instruct_msg_6 db "Com port = ", 0

tester proc near

call get_video_mode

call display_screen

t_10:

mov ah, 0

int 16h

cmp al, 1bh

jne t_15

ret

t_15:

xchg al, ah

call com_debug

jmp t_10

tester endp

new_int9:

sti

push_all

push cs

pop ds

cmp busy, TRUE

je now_busy

pushf

call dword ptr old_int9_off

mov ax, 40h

mov es, ax

test byte ptr es:[17h], ALT_SHIFT

jz done

test byte ptr es:[18h], SCROLL_SHIFT

jz done

mov busy, TRUE

mov al, ALT_SHIFT

not al

and byte ptr es:[17h], al

mov al, SCROLL_SHIFT

not al

and byte ptr es:[18h], al

call save_screen

call save_cursor

done:

pop_all

iret

now_busy:

call get_scan_code ;повернення сканованого коду

cmp al, 80h

jae eoi

cmp al, ESC

jne still_on

call restore_screen

call restore_cursor

mov busy, FALSE

jmp eoi

still_on:

call com_debug ;

eoi:

mov al, 20h

out 20h, al

pop_all

iret

get_scan_code proc near

in al, KB_DATA

push ax

in al, KB_CTL

mov ah, al

or al, 80h

out KB_CTL, al

xchg ah, al

out KB_CTL, al

pop ax

ret

get_scan_code endp

save_cursor proc near

mov ah, 03h

mov bh, 00h

int 10h

mov saved_cursor_pos, dx

mov ah, 02h

mov bh, 00h

mov dh, 25

mov dl, 0

int 10h

ret

save_cursor endp

restore_cursor proc near

mov ah, 02h

mov bh, 00h

mov dx, saved_cursor_pos

int 10h

ret

restore_cursor endp

com_debug proc near

; recieves scan code in al

cmp al, D

jne cd_10

call display_modem_status

call display_line_status

call display_modem_control

ret

cd_10:

cmp al, C

jne cd_20

call change_port

call display_port

call display_modem_status

call display_line_status

call display_modem_control

ret

cd_20:

cmp al, ONE

je cd_30

cmp al, NUM_ONE

jne cd_40

cd_30:

mov ah, cursor

mov bh, ON

call set_modem_control

call display_modem_control

ret

cd_40:

cmp al, ZERO

je cd_50

cmp al, NUM_ZERO

jne cd_60

cd_50:

mov ah, cursor

mov bh, OFF

call set_modem_control

call display_modem_control

ret

cd_60:

cmp al, LEFT

je cd_70

cmp al, RIGHT

jne cd_100

cd_70:

cmp cursor, DTR

jne cd_80

mov cursor, RTS

jmp cd_90

cd_80:

mov cursor, DTR

cd_90:

call display_modem_control

ret

cd_100:

mov ah, 0eh

mov al, 07h

int 10h

ret

com_debug endp

change_port proc near

;якщо натиснути 'C' -відбудуться зміни всіх адресних регістрів наступного ;порту

cmp port + 1, '1' ;порт 1

jne cp_10 ;

mov modem_control, 02fch ;

mov line_status, 02fdh

mov modem_status, 02feh

inc port + 1 ;

ret ; and done

cp_10:

cmp port, '1' ;

jne cp_20 ;

mov port + 1, '1' ;

mov port, '0'

mov modem_control, 03fch

mov line_status, 03fdh

mov modem_status, 03feh

ret

cp_20:

cmp port + 1, '2' ; порт2

jne cp_30 ; значення від 3 до 10

inc port + 1 ;

mov modem_control, BASE_ADDRESS + MCONT

mov line_status, BASE_ADDRESS + LSTAT

mov modem_status, BASE_ADDRESS + MSTAT

ret

cp_30:

inc port + 1 ; порт 3 -10

cmp port + 1, 3ah ;

jne cp_40 ;

mov port, '1' ;

mov port + 1, '0'

cp_40:

add modem_control, PORT_DISPLACEMENT ; increment present

add line_status, PORT_DISPLACEMENT ;значення

add modem_status, PORT_DISPLACEMENT

ret

change_port endp

display_screen proc near

mov str_ptr, offset main_frame_1

mov row, 2

mov col, 5

mov attribute, BOLD

call printat

mov cx, 19

mov row, 3

main_loop:

push cx

mov str_ptr, offset main_frame_2

mov col, 5

mov attribute, BOLD

call printat

pop cx

inc row

loop main_loop

mov str_ptr, offset main_frame_3

mov row, 21

mov col, 5

mov attribute, BOLD

call printat

mov str_ptr, offset main_frame_msg

mov row, 2

mov col, 30

mov attribute, REV_VIDEO

call printat

mov str_ptr, offset mod_stat_frame_1

mov row, 4

mov col, 9

mov attribute, BOLD

call printat

mov cx, 3

mov row, 5

mod_stat_loop:

push cx

mov str_ptr, offset mod_stat_frame_2

mov col, 9

mov attribute, BOLD

call printat

pop cx

inc row

loop mod_stat_loop

mov str_ptr, offset mod_stat_frame_3

mov row, 8

mov col, 9

mov attribute, BOLD

call printat

mov row, 4

mov col, 31

mov str_ptr, offset mod_stat_msg_1

mov attribute, REV_VIDEO

call printat

mov row, 6

mov col, 10

mov str_ptr, offset mod_stat_msg_2

mov attribute, BOLD

call printat

mov str_ptr, offset lin_stat_frame_1

mov row, 9

mov col, 10

mov attribute, BOLD

call printat

mov cx, 3

mov row, 10

lin_stat_loop:

push cx

mov str_ptr, offset lin_stat_frame_2

mov col, 10

mov attribute, BOLD

call printat

pop cx

inc row

loop lin_stat_loop

mov str_ptr, offset lin_stat_frame_3

mov row, 13

mov col, 10

mov attribute, BOLD

call printat

mov row, 9

mov col, 31

mov str_ptr, offset lin_stat_msg_1

mov attribute, REV_VIDEO

call printat

ov row, 11

mov col, 11

mov str_ptr, offset lin_stat_msg_2

mov attribute, BOLD

call printat

mov str_ptr, offset mod_ctrl_frame_1

mov row, 15

mov col, 10

mov attribute, BOLD

call printat

mov cx, 3

mov row, 16

mod_ctrl_loop:

push cx

mov str_ptr, offset mod_ctrl_frame_2

mov col, 10

mov attribute, BOLD

call printat

pop cx

inc row

loop mod_ctrl_loop

mov str_ptr, offset mod_ctrl_frame_3

mov row, 19

mov col, 10

mov attribute, BOLD

call printat

mov row, 15

mov col, 11

mov str_ptr, offset mod_ctrl_msg_1

mov attribute, REV_VIDEO

call printat

mov row, 17

mov col, 11

mov str_ptr, offset mod_ctrl_msg_2

mov attribute, BOLD

call printat

mov row, 16

mov col, 28

mov str_ptr, offset instruct_msg_1

mov attribute, BOLD

call printat

mov row, 17

mov col, 32

mov str_ptr, offset instruct_msg_2

mov attribute, BOLD

call printat

mov row, 18

mov col, 30

mov str_ptr, offset instruct_msg_3

mov attribute, BOLD

call printat

mov row, 19

mov col, 32

mov str_ptr, offset instruct_msg_4

mov attribute, BOLD

call printat

mov row, 20

mov col, 30

mov str_ptr, offset instruct_msg_5

mov attribute, BOLD

call printat

mov row, 16

mov col, 59

mov str_ptr, offset instruct_msg_6

mov attribute, BOLD

call printat

call display_port

call display_modem_status

call display_line_status

call display_modem_control

ret

display_screen endp

display_modem_status proc near

mov dx, modem_status

in al, dx

test al, D_CTS

jz dms_10

mov bit, '1'

jmp dms_20

dms_10:

mov bit, '0'

dms_20:

mov row, 7

mov col, 14

mov attribute, NORM_VIDEO

mov str_ptr, offset bit

push ax

call printat

pop ax

test al, D_DSR

jz dms_30

mov bit, '1'

jmp dms_40

dms_30:

mov bit, '0'

dms_40:

mov row, 7

mov col, 26

mov attribute, NORM_VIDEO

mov str_ptr, offset bit

push ax

call printat

pop ax

test al, TERI

jz dms_50

mov bit, '1'

jmp dms_60

dms_50:

mov bit, '0'

dms_60:

mov row, 7

mov col, 33

mov attribute, NORM_VIDEO

mov str_ptr, offset bit

push ax

call printat

pop ax

test al, D_RLSD

jz dms_70

mov bit, '1'

jmp dms_80

dms_70:

mov bit, '0'

dms_80:

mov row, 7

mov col, 42

mov attribute, NORM_VIDEO

mov str_ptr, offset bit

push ax

call printat

pop ax

test al, CTS

jz dms_90

mov bit, '1'

jmp dms_100

dms_90:

mov bit, '0'

dms_100:

mov row, 7

mov col, 51

mov attribute, NORM_VIDEO

mov str_ptr, offset bit

push ax

call printat

pop ax

test al, DSR

jz dms_110

mov bit, '1'

jmp dms_120

dms_110:

mov bit, '0'

dms_120:

mov row, 7

mov col, 56

mov attribute, NORM_VIDEO

mov str_ptr, offset bit

push ax

call printat

pop ax

test al, RI

jz dms_130

mov bit, '1'

jmp dms_140

dms_130:

mov bit, '0'

dms_140:

mov row, 7

mov col, 60

mov attribute, NORM_VIDEO

mov str_ptr, offset bit

push ax

call printat

pop ax

test al, RLSD

jz dms_150

mov bit, '1'

jmp dms_160

dms_150:

mov bit, '0'

dms_160:

mov row, 7

mov col, 65

mov attribute, NORM_VIDEO

mov str_ptr, offset bit

call printat

ret

display_modem_status endp

display_modem_control proc near

mov dx, modem_control

in al, dx

test al, DTR

jz dmc_10

mov bit, '1'

jmp dmc_20

dmc_10:

mov bit, '0'

dmc_20:

cmp cursor, DTR

jne dmc_30

mov attribute, REV_VIDEO

jmp dmc_40

dmc_30:

mov attribute, NORM_VIDEO

dmc_40:

mov row, 18

mov col, 12

mov str_ptr, offset bit

push ax

call printat

pop ax

test al, RTS

jz dmc_50

mov bit, '1'

jmp dmc_60

dmc_50:

mov bit, '0'

dmc_60:

cmp cursor, RTS

jne dmc_70

mov attribute, REV_VIDEO

jmp dmc_80

dmc_70:

mov attribute, NORM_VIDEO

dmc_80:

mov row, 18

mov col, 17

mov str_ptr, offset bit

call printat

ret

display_modem_control endp

set_modem_control proc near

; recieves mask in ah, change flag in bh

mov dx, modem_control

in al, dx

cmp bh, ON

jne smc_10

or al, ah

jmp smc_20

smc_10:

not ah

and al, ah

smc_20:

out dx, al

ret

set_modem_control endp

display_line_status proc near

mov dx, line_status

in al, dx

test al, DATA_READY

jz dls_10

mov bit, '1'

jmp dls_20

dls_10:

mov bit, '0'

dls_20:

mov row, 12

mov col, 15

mov attribute, NORM_VIDEO

mov str_ptr, offset bit

push ax

call printat

pop ax

test al, OVERRUN

jz dls_30

mov bit, '1'

jmp dls_40

dls_30:

mov bit, '0'

dls_40:

mov row, 12

mov col, 26

mov attribute, NORM_VIDEO

mov str_ptr, offset bit

push ax

call printat

pop ax

test al, PARITY

jz dls_50

mov bit, '1'

jmp dls_60

dls_50:

mov bit, '0'

dls_60:

mov row, 12

mov col, 34

mov attribute, NORM_VIDEO

mov str_ptr, offset bit

push ax

call printat

pop ax

test al, FRAMING

jz dls_70

mov bit, '1'

jmp dls_80

dls_70:

mov bit, '0'

dls_80:

mov row, 12

mov col, 43

mov attribute, NORM_VIDEO

mov str_ptr, offset bit

push ax

call printat

pop ax

test al, BREAK

jz dls_90

mov bit, '1'

jmp dls_100

dls_90:

mov bit, '0'

dls_100:

mov row, 12

mov col, 51

mov attribute, NORM_VIDEO

mov str_ptr, offset bit

push ax

call printat

pop ax

test al, THRE

jz dls_110

mov bit, '1'

jmp dls_120

dls_110:

mov bit, '0'

dls_120:

mov row, 12

mov col, 57

mov attribute, NORM_VIDEO

mov str_ptr, offset bit

push ax

call printat

pop ax

test al, TSRE

jz dls_130

mov bit, '1'

jmp dls_140

dls_130:

mov bit, '0'

dls_140:

mov row, 12

mov col, 63

mov attribute, NORM_VIDEO

mov str_ptr, offset bit

call printat

ret

display_line_status endp

display_port proc near

mov row, 16

mov col, 70

mov str_ptr, offset port

mov attribute, BOLD

call printat

ret

display_port endp

save_screen proc near

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

;Ця процедура зберігає попереднє значення буфера відеосигналів у вигляді ;констант

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

mov dx, crt_control_port

cld

push ds

push ds

pop es

mov di, offset screen_storage

mov ax, video_ram

mov ds, ax

;cmp ax, 0b800h

;jne save_10

push es

mov ax, 40h

mov es, ax

mov al, es:[65h]

mov bh, al

and al, 0f7h

out dx, al

pop es

save_10:

mov si, 0

mov cx, 2000

rep movsw

pop ds

;cmp video_ram, 0b800h

;jne save_20

mov al, bh

push ax

push dx

call display_screen

pop dx

pop ax

out dx, al

save_20:

ret

save_screen endp

restore_screen proc near

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

;процедура відновлює особливий зміст відео

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

cld

push ds

pop es

mov si, offset screen_storage

mov ax, video_ram

mov es, ax

cmp ax, 0b800h

jne res_10

push es

mov dx, crt_control_port

mov ax, 40h

mov es, ax

mov al, es:[65h]

mov bh, al

and al, 0f7h

out dx, al

pop es

res_10:

mov di, 0

mov cx, 2000

rep movsw

cmp video_ram, 0b800h

jne res_20

mov al, bh

out dx, al

res_20:

ret

restore_screen endp

printat proc near

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

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

xor ax, ax

mov al, row ;однорідні обчислення

mov cl, 80 ; переривання початкової позиції

mul cl ; стартова відео ram

xor bh, bh

mov bl, col

add ax, bx

shl ax, 1 ; переривання = ((row x 80) + col) * 2

mov di, ax ; di індекс відео ram

mov bx, video_ram ; ініціалізація відео

mov es, bx

mov ah, attribute ; ah = attribute

mov bx, str_ptr ; bx = pointer to string

mov si, 00 ; si настунний індекс строки

mov dx, crt_status_port

printat_10:

cmp byte ptr ds:[bx + si], 0 ; нульовий байт

je printat_20 ;

mov cl, byte ptr ds:[bx + si] ; байт заперечення

wait_1:

in al, dx

test al, 1

jnz wait_1

cli

wait_2:

in al, dx

test al, 1

jz wait_2

mov es:[di], cl

sti

inc di ; wait_3:

in al, dx

test al, 1

jnz wait_3

cli

wait_4:

in al, dx

test al, 1

jz wait_4

mov es:[di], ah ; введені атрибути

byte

sti

inc di ; inc si ; ++string

jmp printat_10

printat_20:

ret

printat endp

loader proc near

call get_video_mode

mov ah, 35h

mov al, 09h

int 21h

mov old_int9_off, bx

mov old_int9_seg, es

mov ah, 25h

mov al, 09h

mov dx, offset new_int9

int 21h

mov dx, offset sign_on_msg

mov ah, 09h

int 21h

mov dx, offset loader

int 27h

ret

loader endp

get_video_mode proc near

mov ax, 40h

mov es, ax

mov ax, es:[63h]

add ax, 4

mov crt_control_port, ax

add ax, 2

mov crt_status_port, ax

mov video_ram, 0b000h

mov ah, 15 ; check if graphics display

int 10h

test al, 4

jnz got_mode

mov video_ram, 0b800h ; регульований відео ram адрес

mov graphics, true

got_mode:

ret

get_video_mode endp

sign_on_msg db 0dh, 0ah

db "COMDEBUG now resident - Alt + Scroll Lock to activate"

db 0dh, 0ah, '$'

code ends

end first

Додаток В

Блок схема алгоритму :

Размещено на Allbest.ru

...

Подобные документы

  • Розрахунок часових затримок для формування імпульсів у програмі передачі даних через послідовний порт мікроконтролера, а також розрахунок швидкості передачі даних через послідовний порт. Алгоритм підпрограми обробки переривань від послідовного порту.

    курсовая работа [29,9 K], добавлен 07.06.2010

  • Формати прийому та передачі даних через послідовний порт, його технічні характеристики, будова і принцип роботи. Характеристика протоколів послідовної передачі. Способи керування портами у WINDOWS95 та WINDOWS XP. Опис алгоритму і функціонування програми.

    дипломная работа [752,6 K], добавлен 09.06.2010

  • Локальні мережні ресурси. Класифікація супутників зв'язку за висотою орбіти. Максимальна швидкість роботи, яка забезпечується технологією Інтернет. Загальний доступ до принтера користувачам ЛОМ. Обмін інформацією між користувачами комп'ютерної мережі.

    контрольная работа [29,2 K], добавлен 19.07.2011

  • Обґрунтування варіанту побудови однорангової мережі з використанням витої пари для випадку об'єднання робочих місць. Спільне використання принтера та файлів, що містяться на одному з комп'ютерів. Схема, основні етапи побудови та налагодження мережі.

    лабораторная работа [128,9 K], добавлен 30.03.2010

  • Поняття Інтернету, його структура та головні елементи, принципи існування та діяльності часток. Імена комп'ютерів та служба. Кеш і мережа, взаємозв'язок. Proxies, або доступ до світу через посередника. Безпечна передача даних, її принцип та інструменти.

    реферат [18,9 K], добавлен 03.06.2011

  • Поняття комп'ютерної мережі як спільного підключення окремих комп’ютерів до єдиного каналу передачі даних. Сутність мережі однорангової та з виділеним сервером. Топології локальних мереж. Схема взаємодії комп'ютерів. Проблеми передачі даних у мережі.

    курсовая работа [605,0 K], добавлен 06.05.2015

  • Огляд та конфігурація комп’ютерних мереж - двох або більше комп’ютерів, об’єднаних кабелем таким чином, щоб вони могли обмінюватись інформацією. Характеристика мереживих пристроїв иа середовища передачі даних. Під’єднання до мережі NetWare та Internet.

    дипломная работа [1,5 M], добавлен 15.02.2010

  • Опис інтерфейсу паралельного порту Centronics, який має 25-контактний 2-рядний роз'єм DB-25-female. Швидкість передачі даних, фірмові розширення. Розгляд BIOS для LPT-порту. Опис програмного середовища. Приклад виконання програми, блок-схема алгоритму.

    курсовая работа [1,2 M], добавлен 23.04.2014

  • Основні функції модему та способи модуляції, перетворення параметрів носійного синусоїдного коливання. Максимальна інформаційна швидкість каналу. Основні види модуляції, модулятори і демодулятори, сигнально-кодові конструкції, амплітудна предкорекція.

    реферат [311,0 K], добавлен 11.01.2011

  • Проект локальної мережі на 48 комп’ютерів, з’єднаних між собою 5 комутаторами з двома серверами. Основні принципи побудови мереж за технологією 100BaseTx; розробка топології розташування елементів; розрахунок швидкості передачі даних в локальній мережі.

    курсовая работа [509,3 K], добавлен 24.04.2013

  • Файлові системи CD-ROM, основні типи зберігання даних в комп'ютері: магнітний і оптичний. Основні характеристики накопичувачів CD-ROM. Типи звукових файлів, процес стиснення аудіоданих. Розміри портативних систем та проблеми сумісності комплектуючих.

    контрольная работа [19,5 K], добавлен 28.10.2009

  • Поняття комп'ютерної мережі як системи зв'язку між двома чи більше комп'ютерами через кабельне чи повітряне середовище. Середовище передачі у комп'ютерних мережах. Передумови інтенсивного розвитку мережних технологій. Мережні сервіси, класифікація мереж.

    реферат [20,8 K], добавлен 13.11.2013

  • Поняття локальної комп'ютерної мережі як об'єднання певного числа комп'ютерів на відносно невеликій території. Вибір мережевої технології та топології мережі. Вибір активного та пасивного мережевого обладнання. Монтаж кабельної системи, вибір підключення.

    курсовая работа [3,3 M], добавлен 09.06.2014

  • З’єднання компонентів мережі офісу на фізичному та канальному рівні, створення топології мережі, налаштування адресації та маршрутизації. Моделювання потоків трафіку і обміну пакетами між роутерами мережі, розрахунок подвоєної затримки поширення сигналу.

    курсовая работа [402,1 K], добавлен 23.12.2015

  • Основні принципи об’єктно-орієнтованого програмування. Типові середовища програмування та особливості мови С++. Етапи проектування БД. Розробка програмного забезпечення для реалізації створення бази відеофільмів. Основні положення та моделі БД.

    курсовая работа [2,7 M], добавлен 24.03.2011

  • Розгляд особливостей мови програмування С++: основні можливості, характеристика функцій. Аналіз файлів з вхідними даними. Використання похідних класів як ефективний засіб об’єктно-орієнтованого програмування. Способи роздруківки графічного вирішення.

    курсовая работа [510,9 K], добавлен 14.03.2013

  • Характеристика та призначення Прикладного рівня як джерела і приймача для переданих через мережу повідомлень. Устаткування, принцип роботи локальних та глобальних комп’ютерних мереж. Умови ефективної взаємодії комп'ютерів в мережному середовищі.

    контрольная работа [26,7 K], добавлен 20.09.2009

  • Програма, яка приймає дані з зовнішнього пристрою через паралельний порт і використовується на комп’ютері з паралельним адаптером, операційною системою MS-DOS. Огляд існуючих пристроїв, систем, програмного забезпечення. Реалізація проекту, текст програми.

    курсовая работа [18,0 K], добавлен 08.08.2009

  • Міжрівневі взаємодії, що відбуваються при передачі даних по мережі. Процес відправлення повідомлень з одного місця в інше, мережні процеси, протоколи. Характеристика та призначення протоколу ARP. Визначення фізичної адреси локального, віддаленого вузлів.

    контрольная работа [12,4 K], добавлен 22.09.2009

  • Розробка програми на мові програмування Assembler, що виводить на екран чоловічка, який через певний час відтворює рухи. Використання кольорового графічного адаптера в текстовому режимі. Основні параметри, цикл заміни кадрів у анімації та їх створення.

    контрольная работа [124,1 K], добавлен 24.03.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.