Лабораторная работа №2. Лабораторная работа №1
Лабораторная работа №1
Вариант 1
Написать программу, которая позволяет с помощью клавиш управления курсором мигать его по экрану. Примечание: код клавиш представлен в расширенном коде, т.е. первое чтение функцией 1 (int 21h) даёт ноль и требуется повторное чтение. См. методическое пособие.
Вариант 2
Написать программу, которая выводит на экран число Фибоначчи с номером n. Где n задается с клавиатуры.
Вариант 3
Программа должна определять, к какой группе откосится введённый символ (цифра, русская буква, латинская буква, знак) и вывести это на экран.
Вариант 4
Написать программу, которая выводит на экран текущую дату в виде 21.01.02 Примечание: см. методическое пособие, функция 2Аh (DOS).
Вариант 5
Программа по введенной русской заглавной букве определяет согласная или гласная эта буква и отображает это на экран.
Вариант 6
Написать программу, которая организует ввод с клавиатуры шестнадцатеричного числа из двух цифр и отображает его на экране в двоичном виде. (Если введенные символы не шестнадцатеричные цифры, то запрос повторяется).
Вариант 7
Написать com-программу, которая запрашивает с клавиатуры десятичное число из двух цифр и помещает его в регистр dl.
Вариант 8
Составить программу, которая позволяет решить проблему 2000 год, т.е. программа должна устанавливать год (например. 2002), Год задаётся в самой программе. Программа должна быть как можно короче.
Вариант 9
Написать программу, которая выводит на экран адрес начала сегмента команд (в h-виде XXXXh:0000)
Вариант 10
Написать программу, которая выводит на экран прописные буквы латинского алфавита, для этого организовать цикл, не используя команду LOOP.
Вариант 11
Разработать com-программу формирования на текстовом экране дисплея окна с авторским сообщением. Сообщение должно содержать фамилию, инициалы, номер группы, обозначение клавиши завершения программы.
Вариант 12
Написать программу, которая при нажатии на клавиши соответствующие символам латинского алфавита отображает их на экране, но со сдвигом на 1 букву (например, при нажатии на 'а' выводится 'b', 'z' -> 'a'). Выход по нажатию Enter.
Вариант 13
Составить программу, запрашивающую пароль из пяти символов. При нажатии на клавиши символы отображаются в виде звёздочек '*'. При правильном вводе пароля программа заканчивает своё выполнение. При несоответствии пароля запрос повторяется. Сам пароль хранится в программе. Желательно, чтобы он не просматривался в тексте программы явно.
Вариант 14
Написать программу, которая принимает с клавиатуры десятичную цифру и выводит всё на экран записанную римскими цифрами. Если введена не десятичная цифра, то выводится сообщение об ошибке и ввод повторяется.
Вариант 15
Написать программу, которая вычисляет значение выражения А*3+В*5-С*7 результат записывает в память в виде числа со знаком, А, В, С - размером в 1 байт резервируется в сегменте данных.
Вариант 16
Написать программу, которая выводит на экран день недели. Вывод должен осуществляться словом, а не номером дня недели. Примечание: см. в методическом пособии функцию 2Ah (DOS).
Вариант 17
Написать программу, которая выводит на экран название месяца, соответствующего системной дате. Примечание: см. и методическом пособии функцию 2Ah (DOS)
Вариант 18
Написать программу, которая выводит на экран случайное число в диапазоне 1..п (1 < n < 100). Переменная n резервируется и вводится на стадии разработки программы. Примечание: для генерации случайного числа можно использовать системные часы.
Вариант 19
Написать программу, которая выводит на экран название введенной десятичной цифры.
Вариант 20
Реализовать игру "Угадай число" в диапазоне 1..9. Программа предлагает угадать число. Пользователь вводит ответ. Если он совпадает со случайно выбранным числом, выводится сообщение о победе. Если не совпадает, то сообщается "больше" или "меньше". Если пользователь снова не угадал, то он проиграл.
Лабораторная работа №2
Вариант 1
Написать программу, которая в виде линейной диаграммы выводит на экран количество свободного места на диске в процентах. (В текстовом режиме. Хорошо бы использовать символы, коды которых в ASCII 176. 177, 178) См. методическое пособие, функция 36h(DOS)
Вариант 2
Организовать ввод и сложение двух десятичных чисел длиной не более 10 цифр и вывод результата. Числа расположить одно под другим, т.е. на экране операция должна выглядеть в виде сложения столбиком. (Легче работать с числами в BCD виде)
324429
Вариант 3
Написать программу, которая выводит на экран свой текст. Каждый байт представить ввиде шестнадцатеричной цифры.
Вариант 4
Написать com-программу выводящую на экран таблицу символов ASCII с их номерами.
Вариант 5
Написать программу, имитирующую обратный отсчёт времени. Например, от 60 сек до 0. В качестве задержки можно использовать длинный пустой цикл.
Вариант 8
Написать программу, которая позволяет ввести десятичное число (0..99), систему счисления (2..9), а затем выводит заданное число в этой системе счисления.
Вариант 9
Организовать ввод строки до 255 символов и вывод её в обратном порядке.
Вариант 10
Написать программу, которая изначально не имеет завершения (mov ah,4c int 21h) но в процессе выполнения дописывает его в свой сегмент команд, так что благополучно завершается.
Вариант 11
Составить программу, проверяющую, является ли введённое число факториалом. Если является, то вывести число, имеющее такой факториал. Вводимое число находится в пределах 1..999.
Вариант 12
Организовать ввод десятичного числа (до 3 цифр) и вывод его в шестнадцатеричном и двоичном виде.
Вариант 14
Написать программу "Логический калькулятор", которая позволяет производить логические действия AND &., OR |, XOR ^ над байтами. Калькулятор работает следующим образом: в двоичном виде вводится первый операнд, затем знак операции, потом в двоичном виде второй операнд. Результат выводится также в двоичном виде. Операнды имеют размерность байта.
Вариант 15
Составить программу, выводящую на экран таблицу Пифагора. Таблица не должна заранее храниться в памяти, а должна генерироваться в процессе выполнения программы.
Вариант 16
Написать программу, организующую ввод строки( < 255 символов),а также ввод символа для поиска. Программа подсчитывает количество вхождений символа в строку и выводит его на экран.
Вариант 17
Разработать программу, разбивающую экран пи NxM частей в виде таблицы, используя символы псевдографики ( коды ASCII 179 - 218 ). I < N < 10, I < М <10 -вводятся с клавиатуры.
Вариант 18
Написать программу, которая выводит на экран календарь текущего месяца, Примечание: будут полезны функции установки и получения системной даты 2Ah и 2Bh. (DOS) См. методическое пособие.
Вариант 19
Составить программу, которая записывает в память введённое с клавиатуры десятичное число как упакованное BCD (до 10 цифр).
Вариант 20
Написать программу, умножающую BCD число произвольной размерности на однозначное BCD число.