Пошукова робота з
дисципліни
“Системне програмування”
на тему: “Особливості використання функцій на мові Асемблер”
2001
Програма, яка викликається
1. Ім’я процедури (функції) повинна бути задана в директиві public:
public ім’я процедури (функції)
2. Якщо процедура (функція) використовує дані, пам’ять під які виділена в іншій програмі, то в цій програмі використовується директива extrn, визначення 1, визначення 2, ...
Загальний вид визначення для даних, що передаються:
ім’я – тип: кількість, де
ім’я - ім’я даного, пам’ять під яке виділена в іншому модулі;
тип – тип даного, використовується для визначення довжини даного в байтах, для задання використовуються ключові слова: byte, word, dword, ford, gword, tbyte або ім’я структури для 1-, 2-, 4-, 8-, 10 – байтових даних та даних визначених користувачем. Якщо в якості зовсім іншого імені використовується ім’я, визначене в директиві equ, його тип – аbs;
кількість – задає кількість елементів даного типу, використовується, якщо в якості зовнішнього передається масив, дозволяє застосовувати в процедурі (функції) операції SIZE, LENGTN.
Таким чином, імена використаних, але не визначених даних повинні визначатися директивою estrn, а імена визначених даних, які можуть використовуватися іншими модулями, визначаються директивою public. Щоб забезпечити можливість однаково задавати дані в різних модулях, використовується директива global. Загальний вигляд директиви:
global визначення 1, визначення 2, ...
Визначення задаються так само, як для директиви extrn.
Щоб визначити функцію global, транслятор “дивиться” чи виділена пам’ять для даного в цьому модулі. Якщо виділена, директива еквівалентна директиві local, в противному випадку – estrn. Використання global дає можливість зробити загальним визначення для декількох модулів. Загальна частина може бути поміщена в файл, який підключається до модулів за допомогою директиви include.
Загальний вигляд директиви:
incude ім’я файла.
Для файла може бути задане його повне ім’я.
Зовнішня процедура (функція) може використовуватися іншими програмами, про які розробник заздалегідь може не знати, ця програма не повинна “псувати” зміст ресурсів загального користування.
З врахуванням вищевказаних вимог загальний вигляд зовнішньої процедури (функції) слідуючий:
MODEL ім’я
......................
CODE
ім’я проц. proc
public ім’я
; Збереження використаних регістрів
.......................
; реалізація алгоритма
; відновлення використаних регістрів
.......................
ret
ім’я endp
end
В процедурі, на відміну від головної програми, в директиві end адреса тачки входу не задається.
Загальний вигляд викликаючої програми:
MODEL ім’я
......................
extrn ім’я – проц. proc
......................
CODE
begin
...................
end begin
Директиви public та extrn в цих програмах можна замінити директивою global ім’я – проц: proc. Але все-таки рекомендується використовувати директиви public та extrn, так як вони дозволяють більш глибоко вивчити механізм зв’язку модулів. Саме ці директиви найбільш часто використовуються в програмах. Після впевненого використання цих директив, їх можна замінити директивою global.
Для створення програми з декількох модулів, виконується роздільна трансляція для кожного модуля (tasm ім’я – модуля 1, tasm ім’я – модуля 2, ...) і компоновка всіх модулів разом (tlink ім’я – модуля 1, ім’я модуля 2...) Для формування налагодженої інформації використовуються ті ж ключі, що і для одномодульних програм.
Другие работы по теме:
Система вимірника струмів
Обґрунтування достатності апаратних засобів та програмних ресурсів. Розподіл функцій пристрою між вузлами мікропроцесору. Проектування принципової схеми пристрою, формування тактових імпульсів. Програмне забезпечення мікропроцесора, лістинг програми.
Практичні аспекти створення програмного забезпечення
Сучасні засоби обчислювальної техніки, їх внесок в розробку програмного забезпечення. Порівняльний аналіз мов програмування. Методика створення програми для знайдення оптимального розподілу задачі по мережі, таким чином, щоб час розв’язку був мінімальним.
Математичні функції в Excel. Запис макросів
Основні математичні функції табличного процесора Excel, особливості та правила їх використання. Основи мови макросів, порядок їх запису та виконання. Поняття та характерні риси макрофункцій, їх призначення та правила використання в програмі Excel.
Контроль доступу до вибраних файлів з веденням протоколу
Ведення протоколу роботи комп’ютера. Розробка програми для створення списку розширень файлів і занесення часу і дати доступу до них на мові програмування Асемблер. Виклик переривання 21h код-функції та занесення до регістрів. Алгоритм та лістинг програми.
Елементи та структура програми мови Паскаль
Загальні відомості про мову програмування, історія створення та використовування. Програма мовою Паскаль складається з лексем і символів – розділювачів. Робота з масивами, створення алгортимів. Складання програм з використанням процедур та функцій.
Програми – аналоги DOS-програм ren, xcopy
Написання програми, яка дозволяє перейменувати файл і скопіювати задані файли та каталоги. Використання рекурсивної функції для перегляду дерева підкаталогів при вході в них. Використання системного сервісу файлу, який зосереджено в перериванні 21h.
Низькорівневе програмування контроллера клавіатури
Огляд низькорівневих команд. Застосування мнемонічних позначень та макровизначень (макросів). Різниця між мовою асемблера та мовою машинних кодів. Асемблери для DOS, Microsoft Windows та GNU/Linux. Принцип роботи контролера клавіатури і його інтерфейс.
Графічна бібліотека OpenGl
Програма створення графіки OpenGl. Алгоритми зафарбовування від внутрішньої точки до границь довільного контуру. Алгоритм обчислення координати точки кривої Без'є за заданними параметрами. Створення програм OpenGL мовою С, C++ у середовищі Windows.
Реалізація функцій ABS(X), [X], {x}
Використання математичного сопроцесора або його емулятора при програмуванні на мові асемблера з використанням дробових чисел. Створення програми на мові ASM-86, яка реалізує функції [x], {x}, |X|. Алгоритм перетворення цілого числа в дійсне та навпаки.
Реалізація функцій ABS(X), [X], {x}
Стандартні розміри чисел при програмуванні на мові Асемблера. Робота з дробовими числами, використання математичного сопроцесора або його емулятора. Створення програми, яка б перетворювала ціле число в дробове і навпаки, а також функції [x], {x}, |X|.
Особливості використання САПР технолога–програміста
Характеристика "Турбо САП" - універсальної системи автоматизованого проектування керуючих програм для верстатів з ЧПК. Загальне призначення, програмне забезпечення, експлуатаційні можливості. Специфіка роботи з інтерактивною графічною оболонкою системи.
Монітор використання ресурсів комп'ютера
Програми, які виводять на екран характеристики комп'ютера. Розробка програми "Монітор використання ресурсів комп’ютера" на мові програмування ASM-86. Алгоритм програми та її реалізація. Системні вимоги, інструкція для користувача, лістинг програми.
Програмування на мові Асемблер
Курсова робота з мови прграмування „Асемблер” на тему: Програмування на мові Асемблер” Зміст Вступ Сегментація пам’яті. Команди пересилання muv. Команди передачі даних.
Розробка та виконання програм на мові Pascal
Заняття №3. Розробка та виконання програм на мові Pascal. Мета: систематизація знань, формування вмінь і навичок, розробки та виконання на ЕОМ найпростіших програм на мові Pascal.
Робота в системі програмування
Реферат з інформатики на тему: Робота в системі програмування Від складання програмістом до виконання комп'ютером програма проходить досить тривалий шлях спеціальними службовими програмами, що складають систему автоматизації програмування. З часом слово “автоматизація” випало із наведеного словосполучення, в результаті чого воно перетворилося на систему програмування.
Процедури та функції в Turbo Pascal
Житомирський військовий інститут національного авіаційного університету Реферат на тему: Процедури та функції в Turbo Pascal Житомир 2010 1. Загальні відомості про процедури та функції
Лісп мова функціонального програмування
Реферат на тему: Лісп – мова функціонального програмування 1. Місце Ліспу у класифікації мов програмування За однією з класифікацій мови програмування діляться на
Галузева термінологія
Text Функціональне термінознавство пов’язане з вивченням сучасних функцій терміну в різних текстах та ситуаціях професійного спілкування і підготовки спеціалістів, а також досліджує особливості використання термінів в мові і комп’ютерних системах.
Повітряний кодекс України Розділ ІІІ
Розділ III ВИКОРИСТАННЯ ПОВІТРЯНОГО ПРОСТОРУ УКРАЇНИ Стаття 9. Структура повітряного простору України Структура повітряного простору, порядок її формування і зміни, правила використання повітряного простору визначаються державним органом по використанню повітряного простору України.
Асемблер Контрольна - варіант 1
Задача № 1 . Розробіть алгоритм і напишіть програму на мові Асемблера для обчислення функції: М3 = (С - М1) + (Е – (50)16) + (D + М2) , де A, B, C, D, E, H, L – регістри загального призначення мікропроцесора КР580ВМ80А; М1, М2 – операнди, розташовані в пам’яті; М3 – результат обчислень, розташований у пам’яті.
Використання масивів та циклів
Лаболаторна робота №3 Тема: Організація циклів та масивів на мові Паскаль. Мета: Навчитись розвязувати задачі з циклом, працювати з масивами. Теоретичні відомості.
Фотометрія 2
Питання по екзамену з фотограмметрії. Завдання предмета “Фотограмметрія”, фотограмметричні методи отримання і обробки знімків які ви знаєте? Фотограмметричні методи і особливості фотограмметричних методів?