Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Лабораторная работа 7 Тема- Работа со.

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 25.11.2024

сновы системного программирования

Лабораторная работа 7

Тема: Работа со строками. Использование функций DOS

Цель работы: Научиться использовать функции DOS для ввода и вывода строковой информации.

Задание 1

  1.  Изучите приведенную ниже программу на языке ассемблера. Программа позволяет ввести строку с клавиатуры и определить сколько заданных символов содержится в ней.

TITLE Program7

;название программы

.MODEL small

;отводим под стек и под данные по 64Кб

.STACK 100h

;отмечаем начало сегмента стека

.DATA

;отмечаем начало сегмента данных

Char DB 0

Buf DB 255, 0, 256 DUP (0)

;

.CODE

;отмечаем начало сегмента кодов

main PROC

mov AX, @data

;копируем адрес

mov DS, AX

;сегмента данных

mov ES, AX

mov DX, offset Buf 

;считываем строку с клавиатуры

mov AH, 0ah

int 21h

mov AL, Buf+1

;если считано 0 байт, то выход из

or AL, AL

;программы

jz Exit1

mov AH, 01h

;считываем символ с клавиатуры

int 21h

mov Char, AL

xor DX, DX

mov CX, DX

mov CL, Buf+1

;задаем количество повторений (длина строки)

cld

mov DI, offset Buf+2

Cycle:

scasb

jne Next

inc DX

Next:

loop Cycle

Exit1:

mov AX,4C00h

;выход

int 21h

;из программы

main ENDP

END main

  1.  Выполните отладку программу. Чему равно значение DX перед выходом из программы?

Задание 2

Используя предложенную выше программу, разработайте программу, которая выполняет заданные действия. Исполнить программу с несколькими (три - четыре) строками, проверить правильность результатов. (В отчете обязательно привести результаты вычислений).

  Номер задания выбирается в соответствии с номером бригады.

  1.  Ввести с клавиатуры строку. Получить новую строку удалением пробелов и знаков табуляции. Вывести полученную строку на экран.
  2.  Ввести с клавиатуры строку (использовать только латинские символы). Получить новую строку преобразованием  всех малых букв в большие. Вывести полученную строку на экран.
  3.  Ввести с клавиатуры строку. Посчитать количество слов в строке. Вывести полученное число на экран. Предполагается, что слова отделяются друг от друга пробелами. Между словами может более одного пробела.
  4.  Ввести с клавиатуры строку. Ввести с клавиатуры коротенькую строку - шаблон. Найти шаблон во введенной строке. Вывести на экран “ДА”, если шаблон есть и “НЕТ”, если нет.
  5.  Ввести с клавиатуры две строки. Сравнить их. Вывести на экран “ДА”, если они совпадают и “НЕТ”, если не совпадают.
  6.  Ввести с клавиатуры строку, состоящую из нескольких слов. Вывести каждое слово на экран в отдельной строке, т.е. выдать слова в столбик.
  7.  Ввести с клавиатуры строку. Переставить в ней символы, поменяв местами первый символ с последним, второй с предпоследним и т.д. Вывести полученную строку на экран. Например, если введена строка ПОГОДА, то преобразованная строка имеет вид АДОГОП
  8.  Ввести с клавиатуры две строки. Сравнить их. Если вторая строка содержится в первой, то вывести на экран номер начала второй строки в первой. В противном случае вывести 0. Например, для строк ПОБЕДА и ОБЕД, следует вывести 2.
  9.  Ввести с клавиатуры строку, содержащую несколько точек. Преобразовать строку, так чтобы после каждой точки был пробел. Вывести полученную строку на экран.
  10.  Ввести с клавиатуры строку, содержащую несколько точек и латинские символы. Преобразовать строку, так чтобы после каждой точки следующая буква была заглавной. Вывести полученную строку на экран.




1. Лабораторная работа 8 ИЗУЧЕНИЕ РАБОТЫ УНИВЕРСАЛЬНОГО РЕГИСТРА Цель работы- Изучить принцип работы 4
2. из самых утонченных эпох в истории русской культуры
3. 310 2012 год Практическая работа 1 Определить время налива цистерны диаметров D 28 м и
4. ориентированный иностранный английский язык Очное отделение 4 года 2 курс Рус
5. Союз спасения. Через несколько лет образовалось два тайных революционных общества
6. Неэффективная управляющая команда
7. Тема 1. Введение в стереометрию
8. тема Теперь ребенок организм может переваривать и усваивать не только жидкую и молочную пищу но и более твер
9. Дипломная работа- международное патентно-правовое сотрудничество
10. а и то и другое Место жительства- Областной город х большой город свыше 200 тыс
11. лекция Селекция наука о создании новых пород животных сортов растений штаммов микроорганизмов
12. пояснительная записка к курсовому проекту по дисциплине ldquo;Детали машинrdquo; Выполнил-
13. ЗАДАНИЕ Вариант 1 Разработать на основе приведенных ниже данных проект организационноэкономичес
14. Типы односоставного предложения Способы выражения главных членов в односоставных предложениях
15. ГРАНД МИР Крым г
16. Сибирская государственная автомобильнодорожная академия СибАДИ Кафедра
17. Ответственность в международном праве
18. Лабораторная работа 9 Лабораторная работа 4ldquo;Разработка параметрических чертежей с применен
19. по теме- Религиозные войны и укрепление абсолютной монархии во Франции
20. Информационный менеджмент Практическая работа 1