Термінова допомога студентам
Дипломи, курсові, реферати, контрольні...

Трансляція програми та пошук помилок

РефератДопомога в написанніДізнатися вартістьмоєї роботи

Ключo: Вказівка імені вихідного файлу. Зазвичай NASM вибирає ім'я вихідного файлу самостійно; так як це залежить від формату об'єктного файлу. Якщо формат об'єктного файлу — Microsoft (obj і win32), він видалить розширення .asm (або будь-яке інше, яке вам подобається використовувати — NASMу все одно) з імені вихідного файлу і замінить його на .obj. У об'єктних файлів Unix-формату (aout, coff, elf… Читати ще >

Трансляція програми та пошук помилок (реферат, курсова, диплом, контрольна)

Для трансляції програми я використав транслятор Nasm. Я використав його через те що в ньому програмно вже вбудовано компонувальник.

Nasm — вільний транслятор вихідного тексту програми, написаної на мові асемблера для архітектури Intel x86. Використовується для написання 16-, 32- і 64-розрядних програм. В NASM використовується Intel-синтаксис запису інструкцій. Пропозиція мови асемблера NASM (рядок програми) може складатися з наступних елементів:

Мітка Інструкція Операнди Коментар

Операнди відокремлюються між собою комою. Перед рядком і після інструкції можна використовувати будь-яку кількість символів пробілів. Коментар починається з крапки з комою, а кінцем коментаря вважається кінець рядка. Як інструкція може використовуватися команда або псевдокоманда (директива компілятора). Якщо рядок дуже довга, то її можна перенести на наступну, використовуючи зворотний слеш. ASM компілює програми під різні операційні системи в межах x86-сумісних процесорів. Перебуваючи в одній операційній системі, можна безперешкодно відкомпілювати виконуваний файл для іншої. Компіляція програм в NASM складається з двох етапів. Перший — асемблюванння, другий — компонування. На етапі асемблювання створюється об'єктний код. У ньому міститься машинний код програми і дані, відповідно до вихідним кодом, але ідентифікатори (змінні, символи) поки не прив’язані до адрес пам’яті. На етапі компоновки з одного або декількох об'єктних модулів створюється виконуваний файл (програма). Операція компонування пов’язує ідентифікатори, певні в основній програмі, з ідентифікаторами, визначеними в інших модулях, після чого всім ідентифікаторів даються остаточні адреси пам’яті або забезпечується їх динамічне виділення.

Для компонування об'єктних файлів в виконувані в Windows можна використовувати вільний безкоштовно розповсюджуваний компонуванльник alink (для 64-х бітних програм компонувальник GoLink), а в Linux — компонувальник ld, який є в будь-якої версії цієї операційної системи.

Для компонування своєї програми я ввів в вікні Nasm команду:

nasm.exef bin kurs. asmo kurs.com.

Ключf: Вказівка формату вихідного файлу. Якщо ключf в командному рядку відсутня, NASM буде вибирати формат вихідного файлу самостійно. У поширюваної версією NASM формат за замовчуванням завжди bin; якщо ви створюєте власну копію NASM, то при компіляції можете перевизначити значення OF_DEFAULT на те, яке вам потрібно за замовчуванням.

Як і для ключаo, розділовий пробіл міжf і форматом вихідного файлу необов’язковий: -f elf іfelf для NASM ідентичні.

Ключo: Вказівка імені вихідного файлу. Зазвичай NASM вибирає ім'я вихідного файлу самостійно; так як це залежить від формату об'єктного файлу. Якщо формат об'єктного файлу — Microsoft (obj і win32), він видалить розширення .asm (або будь-яке інше, яке вам подобається використовувати — NASMу все одно) з імені вихідного файлу і замінить його на .obj. У об'єктних файлів Unix-формату (aout, coff, elf і as86) він буде замінювати розширення на .o. Для формату rdf він буде використовувати розширення .rdf, а в разі формату bin він просто видалить розширення, наприклад з myfile. asm вийде файл myfile. Якщо вихідний файл вже існує, NASM перезапише його, якщо тільки його ім'я не збігається з ім'ям вхідного файлу — в цьому випадку з’явиться попередження і в якості вихідного файлу буде використано ім'я nasm.out. У випадках, коли ім'я за замовчуванням неприпустимо, використовуйте ключo командного рядка, що дозволяє визначити необхідну вам ім'я вихідного файлу. Ім'я вихідного файлу має слідувати за ключемo, неважливо з пропуском між ними або без.. Повний список доступних вихідних форматів може бути отриманий за допомогою команди nasmh.

Розробка інструкції користувача

  • 1. Запустіть програму за допомогою командного рядка або натисніть 2 рази ЛКМ на ярлику програми;
  • 2. Ознайомтеся з інформацією виведеною на екрані;
  • 3. Для виходу виконайте дії виведені на екрані;
  • 4. Закрийте вікно командного рядку якщо ви запускали програму першим шляхом, я якщо другим то програма закриється автоматично.
Показати весь текст
Заповнити форму поточною роботою