logo
AOM / Мельник А

3.2.2. Команди обробки даних

Як вже було зазначено, команди обробки даних в першу чергу ініціюють виконан­ня арифметичних операцій. Це операції додавання, віднімання, множення та ділення над числами, представленими в форматах з фіксованою та рухомою комою. При цьому арифметичні операції можуть виконуватись як над скалярними даними, так і над векто­рами даних.

До арифметичних належать також наступні операції над одиночними операндами: взяття абсолютної величини від операнда (absolute);інверсія знаку операнда (negate);прирощення операнда на одиницю (increment); зменшення операнда на одиницю (decr­ement).

Команди обробки даних ініціюють також виконання логічних операцій. До їх числа входять операції логічного множення, логічного додавання, додавання за модулем два, інверсія, і т. д. Логічні операції виконуються над окремими розрядами даних, над оди­ночними даними і над векторами даних.

До складу команд обробки даних більшості комп'ютерів входить велика кількість операцій зсуву над скалярними даними та векторами даних, які будуть детально роз­глянуті в розділі 3.

Операції перетворення даних змінюють формат представлення даних. Це може бути перетворення із формату з фіксованою в формат з рухомою комою і навпаки, перетво­рення із двійкової в десяткову систему і т. д.

Операції над символами та стрічками символів передбачають обробку символьних даних і будуть розглянуті далі.

В табл. 3.1 наведено перелік та функції арифметичних та логічних команд комп'юте­ра DLX,запропонованого Д. Паттерсоном та Д. Хеннессі в якості навчальної моделі су­часного комп'ютера.

Таблиця 3.1

№ ПП

Код команди

Фунції команд ком'ютера DLX

Арифметичні та логічні

Операції над цілими та логічними даними в регістрах цілих чисел; знакова арифметика з фіксацією переповнення

1

ADD, ADDI, ADDU, ADDUI

Додати, додати безпосереднє дане (immediate), з знаком та без знаку

2

SUB, SUBI, SUBU, SUBUI

Відняти, відняти безпосереднє дане, з знаком та без знаку

3

MULT, MULTU, DIV, DIVU

Перемножити та поділити, з знаком та без знаку

4

AND, ANDI

Додати, додати безпосереднє дане

5

OR, ORI, XOR, XORI

Логічне АБО, логічне АБО над безпосереднім даним, виключне АБО, виключне АБО над безпосереднім даним

6

LHI

Зчитування старших 16 розрядів безпосереднього даного та 16 нулів молодших розрядів

7

SLL, SRL, SRA, SLLI, SRLI, SRAI

Зсуви направо та наліво логічні та арифметичні, включаючи безпосереднє дане

8

SEQ, SNE, SET, SGT, SEE, SGE

Встановити за умови, якщо рівне нулю, не рівне нулю, менше ніж, більше ніж, менше ніж або рівне, більше ніж або рівне

Рухома кома

Операції з рухомою комою

9

ADDD, ADDF

Додати з подвійною точністю та з рухомою комою

10

SUBD, SUBF

Відняти з подвійною точністю та з рухомою комою

11 12

MULTD, MULTF

Помножити з подвійною точністю та з рухомою комою

DIVD, DIVF

Поділити з подвійною точністю та з рухомою комою

13

CVTD2F, CVTD2I,

CVTF2D, CVTF2I, CVTI2D, CVTI2F

Перетворення з формату з подвійною точністю до формату з рухомою комою, до формату з одинарною точністю та навпаки

14

EQD, EQF, NED, XEF, LTD, LTF, GTD, GTF, LED, LEF, GED, GEF

Порівняння даних в форматах з одинарною та подвійною точністю та записати результат до регістру станів