- •О десский национальный морской университет
- •7.080401 "Информационные управляющие системы и технологии",
- •7.080402 "Информационные технологии проектирования"
- •Введение
- •Лабораторная работа №1 структура ехе-программы на ассемблере. Подготовка к выполнению Теоретические сведения
- •Задание
- •Лабораторная работа №2 использование служебных подпрограмм. Циклы. Формирование и вывод на экран строки ascii- символов Теоретические сведения
- •Inc al ; увеличиваем al (код символа) на 1
- •Задание
- •Лабораторная работа №3 управление курсором при выводе. Вложенные циклы. Формирование и вывод на экран таблицы символов ascii Теоретические сведения
- •Задание
- •Лабораторная работа №4 посимвольный ввод с клавиатуры. Анализ нажатия функциональных клавиш и комбинаций Теоретические сведения
- •Задание
- •Лабораторная работа №5 ввод с клавиатуры и обработка символьных строк (пароль) Теоретические сведения
- •Задание
- •Лабораторная работа №6 процедуры. Табличная трансляция. Перевод двоичных данных в символьную форму Теоретические сведения
- •Задание
- •Лабораторная работа №7 работа с файлами Теоретические сведения
- •Задание
Задание
1. Написать процедуру перевода 16-битового (2-байтового) числа в ASCII-формат в 16-ричной системе счисления, используя команду XLAT. Организовать в процедуре перевода циклический перевод двоичных тетрад, начиная со старшей.
Определить в области данных программы строку с фамилией, например:
surname db 'Иванов' ;моя фамилия
(Если фамилия содержит нечетное число букв, дополнить ее пробелом в конце). Передавая на вход процедуры в качестве исходного числа коды пар букв заданной фамилии, преобразовать их в ASCII-формат и выдать на таблицу результата в виде:
Ив | 88A2h
ан | A0ADh
ов | AEA2h
2. Написать процедуру перевода 32-битового (4-байтового) числа в ASCII-формат в 16-ричной системе счисления, используя команду XLAT. Написать, кроме того, процедуру вывода на экран содержимого области памяти (дампа) в виде 16-ричных чисел. Вход процедуры: DS:DX — адрес области памяти; CX — длина в байтах.
3. Написать процедуру перевода 16-битового (2-байтового) числа в ASCII-формат в 8-ричной системе счисления, используя команду XLAT. С помощью этой процедуры вывести на экран числовое представление своей фамилии (пояснения см. в задании 1).
4. Написать процедуру перевода 8-битового (байтового) числа в обратном коде в его символьный эквивалент со знаком в 16-ричной системе счисления, используя команду XLAT. Определить в памяти строку, содержащую латинские и русские буквы. Выдать на экран эту строку и ее числовой знаковый эквивалент, например:
Пакет TASM
–70 –5F –55 –5A –1D +20 +54 +41 +53 +4D
5. Написать процедуру перевода 64-битового (8-байтового) числа в ASCII-формат в 16-ричной системе счисления, используя команду XLAT. Организовать в процедуре перевода циклический перевод двоичных тетрад, начиная с младшей. Ввести с клавиатуры строку символов (Enter — конец ввода) и вывести на экран ее числовое представление.
6. Написать процедуру перевода 32-битового (4-байтового) числа в ASCII-формат в 8-ричной системе счисления, используя команду XLAT. Организовать в процедуре перевода циклический перевод двоичных триад, начиная с младшей. Вывести с помощью этой процедуры на экран числовое представление участка памяти по адресу ES:0000h длиной 256 байт.
7. Написать с использованием команды XLAT процедуру приведения строчных русских букв в символьной строке к верхнему регистру (малые → большие), а также процедуру перевода 4-битового (полубайтового) числа в ASCII-формат в 16-ричной системе счисления. В программе организовать ввод преобразуемых строк с клавиатуры и их порядковую нумерацию в 16-ричной системе счисления при выводе на экран; выход — Esc.
8. Написать процедуру перевода 16-битового числа в ASCII-формат в 32-ричной системе счисления, используя команду XLAT. В программе организовать три сегмента; вывести на экран с помощью написанной процедуры адреса сегментов программы.
9. Написать с использованием команды XLAT процедуру преобразования символьной строки из кодировки DOS в кодировку Win, а также процедуру перевода 8-битового числа в ASCII-формат в 8-ричной системе счисления. В программе организовать ввод преобразуемых строк с клавиатуры и их порядковую нумерацию в 8-ричной системе счисления при выводе на экран; выход — Esc.
10. Написать процедуру перевода 16-ричной ASCII-цифры в ее двоичный эквивалент (4 бита) с помощью команды XLAT. В программе организовать ввод преобразуемых цифр с клавиатуры и вывод на экран символов с кодами, равными полученному числовому результату.
11. Написать с использованием команды XLAT процедуру преобразования символьной строки, в результате которого латинские символы были бы заменены символами с кодами, равными скан-кодам соответствующих клавиш. В программе организовать ввод преобразуемых строк с клавиатуры; выход — по клавише Alt-X.
12. Написать с использованием команды XLAT процедуру преобразования 12-битового (полуторабайтового) числа в ASCII-формат в 16-ричной системе счисления. С помощью этой процедуры вывести на экран числовое представление своей фамилии.
13. Написать с использованием команды XLAT процедуру преобразования символьной строки, в результате которого латинские символы были бы заменены соответствующими тем же клавишам кириллическими символами (например, 'ghbdtn' → 'привет').
14. Написать с использованием команды XLAT процедуру преобразования дробного числа в символьную форму 16-ричной системе счисления. Исходный формат хранения числа — 2-байтовый с фиксированной точкой, по 8 бит для целой и дробной части. С помощью этой процедуры вывести на экран числовое представление своей фамилии.