Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методичка_практика.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
213.5 Кб
Скачать

Практична робота №4

Тема: Робота з символьними рядками

Мета: Набути навички в роботі з масивами, які мають символи

Теоретичні відомості

Необхідно підрахувати кількість букв ‘а’ в масиві, якщо масив закінчується символом ‘%’.

Блок – схема Програма

ORG 800H

LXI H,MAS

MVI C,0

NEXT:MOV A,M

CPI ’%

JZ KON

CPI a

JNZ TTT

INR C

TTT: INX H

JMP NEXT

KON: MOV A,C

STA REZ

HLT

MAS: DB ‘кафедра програмного забезпечення%’

REZ: DB 0

END

HL  MAS

C  0

A  {(HL)}

так

A C

(REZ)  A

ні

ні

так

C  C + 1

HL  HL+1

Завдання: в тексті, який закінчується символом ‘$’ поміняти круглі дужки ( ) на фігурні { } .

TEXT: DB ‘(для (успішного) навчання необхідна лише дисципліна)$’

Практична робота №5

Тема: Робота з двохбайтними числами

Мета: Набути навички в роботі з числами, які займають два байти

Завдання: Скласти алгоритм і програму для обчислення виразу

z = 260/2 + 2x +18 - 2y, x i y займає один байт, а z – два байти.

Рекомендації:

  1. Для ділення на два числа 260 необхідно число розмістити в регістровій парі HL і потім послідовно поділити регістр H на два через акумулятор, а за ним регістр L, враховуючи перенос під час ділення старшого регістру.

  2. X краще розташувати в регістровій парі BC і далі виконати додавання з подвійною точністю.

  3. Для віднімання 2y необхідно організувати доповнений код і операцію віднімання замінити на операцію додавання.

Практична робота №6

Тема: Складне програмування

Мета: Набути навички при складному програмуванні

Теоретичні відомості

Завдання: розробити алгоритм та програму для множення будь-яких однобайтних чисел, результат двохбайтний. Необхідно врахувати знаки чисел і той факт, що від’ємні числа записуються в доповненому коді.

Рекомендації:

  1. Якщо перше чи друге числа, або два разом від’ємні, то необхідно отримати з доповненого коду прямий код і до того ж числа повинні бути додатними.

  2. Одне з чисел необхідно розмістити в регістрову пару, нехай DE, а друге в акумулятор. Регістрову пару HL необхідно обнулити. Далі до HL додати DE A раз.

  3. Якщо результат відємний, то його необхідно записати в доповненому коді.

30