Курсова робота
Програмування на машинно-орієнтованій мові
Зміст
Введення
. Системний аналіз
. Структурний програмування. Схема алгоритму. Програма на мові Сі для int, float
3. Програмування
. 1 Програма на Асемблері УМ
. 2 Підпрограма введення і виведення цілих чисел на Асемблері IBM
. 3 Програма на мові програмування Асемблер IBM РС
. Тестування та налагодження
. Інструкція користувача
. Параметри програми
Висновок
Список використаної літератури
асемблер мову програмування алгоритм
Введення
Мова Ассе? мблера (англ. assembly language) - машинно-орієнтована мова низького рівня з командами, зазвичай відповідними командам машини, який може забезпечити додаткові можливості начебто макрокоманд [1]; автокод, розширений конструкціями мов програмування високого рівня, такими як вирази, макрокоманди, засоби забезпечення модульності програм [2].
Автокод - мова програмування, пропозиції якого за своєю структурою в основному подібні командам і оброблюваних даних конкретного машинної мови [2].
Мова асемблера - система позначень, використовувана для подання в удобочитаемой формі програм, записаних в машинному коді. Мова асемблера дозволяє програмісту користуватися алфавітними мнемонічними кодами операцій, на свій розсуд привласнювати символічні імена регістрів ЕОМ і пам'яті, а також задавати зручні для себе схеми адресації (наприклад, індексну або непряму). Крім того, він дозволяє використовувати різні системи числення (наприклад, десяткову або шістнадцяткову) для представлення числових констант і дає можливість позначати рядки програми мітками з символічними іменами з тим, щоб до них можна було звертатися (за іменами, а не за адресами) з інших частин програми (наприклад, для передачі управління) [3].
Переклад програми на мові асемблера в здійсненний машинний код (обчислення виразів, розкриття макрокоманд, заміна мнемонік власне машинними кодами і символьних адрес на абсолютні або відносні адреси) проводиться ассемблером - програмою-транслятором, яка і дала мові асемблера його назва.
Команди мови асемблера одне одного відповідають командам процесора. Фактично, вони і являють собою більш зручну для людини символьну форму запису - Мнемокод - команд і їх аргументів. При цьому одній команді мови асемблера може відповідати кілька варіантів команд процесора [4].
Крім того, мова асемблера дозволяє використовувати символічні мітки замість адрес комірок пам'яті, які при асемблюванні замінюються на обчислювані ассемблером або компоновщиком абсолютні або відносні адреси, а також так звані директиви (команди асемблера, не переказуються в машинні команди процесора, а виконувані самим асемблером).
Директиви асемблера дозволяють, зокрема, включати блоки даних, задати ассемблирование фрагмента програми за умовою, задати значення міток, використовувати макрокоманди з параметрами.
Кожна модель (або сімейство) процесорів має свій набір - систему - команд і відповідний йому мова асемблера. Найбільш популярні синтаксиси мов асемблера - Intel-синтаксис і AT amp; T-синтаксис.
Існують комп'ютери, які реалізують в якості машинного мова програмування високого рівня (Форт, Лісп, Ель - 76). Фактично, в таких комп'ютерах вони виконують роль мов асемблера.
1. Системний аналіз
Метою курсового проекту є закріплення отриманих знань і професійних навичок розробки та налагодження підпрограм на мові Асемблера. Курсовий проект виконується відповідно до етапами розробки програмного забезпечення: аналіз і постановка задачі для розв'язання на ЕОМ, проектування, кодування, налагодження і тестування розробленої програми. Проектування ведеться відповідно до методології структурного програмування.
Потрібно розрахувати вираз (1):
(1)
Необхідно розробити програми для її обчислення на мовах Сі, Асемблер УМ і Асемблер IBM PC. З клавіатури вводяться 2 змінні і значення масиву, після виконується розрахунок 2 констант 2c і (a * a + 1) даної функції і розрахунок z. Далі виконується висновок результату на екран монітора. Програма складається з 4-х функцій: функція введення змінних, д...