Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторні роботи Степаненко.doc
Скачиваний:
5
Добавлен:
01.03.2025
Размер:
3 Мб
Скачать
☆

Методичні вказівки

В даній роботі пропонується розробити програму розрахунку заданого ариф-

метичного виразу для ЕОМ з нейманівською архітектурою.

Для виконання роботи необхідні грунтовні знання систем числення, основ двійкової арифметики, форматів команд і кодування операцій ЕОМ.

Роботу слід виконувати в наступній послідовності:

1. Розробити схему алгоритма розв’язку задачі.

2. Написати програму в змістовній формі.

3. Визначити систему операцій ЕОМ.

4. Виконати кодування операцій ЕОМ.

5. Адресну інформацію представити в 16-й системі числення.

13

6. Виконати розподіл пам’яті ЕОМ.

7. Написати програму в машинних кодах.

При написанні програми у змістовні формі слід користуватися мнемонічними позначеннями команд, приведеними в наступній таблиці.

Таблиця 1 – Мнемонічні коди команд

Номер п/п

Мнемонічний код

Пояснення

1

LOAD

Завантаження даних з ОП в регістр

2

SEND

Запис даних з регістра в комірку ОП

3

ADD

Складання

4

SUB

Віднімання

5

MUL

Множення

6

DIV

Ділення

7

JMP

Безумовний перехід

8

NOP

Пуста операція

9

STOP

Зупин

Регістри процесора (у двох- і трьохадресних командах) адресуються як комірки оперативної пам’яті з молодшими адресами. При написанні програми слід використовувати мінімально можливу кількість регістрів.

Усі дані зберігаються в оперативній пам’яті в додаткових кодах.

Література

1. Вступ до комп’ютерної інженерії: Методичні вказівки та завдання до контрольної роботи / Уклад.: В. М. Єфимець, І. А. Жуков, Т. Г. Кудзиновська та ін. – К.: НАУ, 2001. – 16 с.

2. Программирование и алгоритмические языки. Н. А. Криницкий, Г. А. Ми-

ронов, Г. Д. Фролов, под ред. А. А. Дородницына. – М.: “Наука”, 1975. – 496 с.

Завдання

Таблиця 2 – Варіанти завдань

ВАР

n

АК

АПР

y

a

b

c

d

Вираз

1

16

1

26

32

4158

240

1992

106

y = (a + b) / (c – d) + a

2

24

2

618

174

630

33

78

1023

y = a + b / c – d  a

3

32

3

448

384

48

464

400

76

y = a b – (c – d) / b

4

16

1

1000

1266

2052

110

1010

38

y = (a + b  c) / (d – a)

5

24

2

276

345

603

384

27

291

y = (a  b + c  d) / b – c

6

32

3

48

64

40

192

472

316

y = (c – b / a) d + a

7

16

1

854

6514

862

7018

28

10

y = (a + c) / d – b / c

8

24

2

69

381

195

78

57

744

y = (a – b) / c + (a + b) / d

9

32

3

196

244

188

412

204

24

y = (c – a) b + (b – a) d

10

16

1

8008

912

106

10

3164

8018

y = d  b – (b – a  c) / d

11

24

2

660

672

177

642

9

1008

y = b  c / (d + a) – a

14

r = r / y

y = r

Продовження таблиці 2

12

32

3

72

64

80

144

356

348

y = (d  a + b  c) / (c – d)

13

16

1

2500

90

5292

2510

120

510

y = b – c a / (b + d)

14

24

2

156

126

48

993

165

645

y = a  b + (c – d  b) / a

15

32

3

108

332

76

388

24

124

y = (a + b  c) / (c + a / d)

В таблиці 2 прийняті наступні позначення: ВАР – варіантний номер; n – розрядність команди; АК – адресність команди; АПР – адреса початку програми; y, a, b, c, d – адреси відповідних комірок пам’яті (змінних).

ПРИКЛАД ВИКОНАННЯ РОБОТИ

Вихідні дані:

n = 24

y

=

357

c = 576

АК = 2

a

=

699

d = 117

АПР = 693

b

=

27

y = (a b + c)

/

(d – a)