DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

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

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Звіт з лабораторної роботи № 2 з дисципліни «Організація та функціонування комп’ютерів»

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
Комп’ютерні науки
Кафедра:
Не вказано

Інформація про роботу

Рік:
2026
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Організація та функціонування комп’ютерів
Група:
КН
Коротко про документ

Про що ця робота

Звіт з лабораторної роботи присвячено вивченню набору інструкцій навчального комп'ютера та загальному порядку їх виконання. Наведено результати дослідження арифметичних і логічних операцій у потактовому режимі симулятора.

У роботі розглядаються

  • Архітектура комп'ютера
  • Набір інструкцій
  • Регістр ознак
  • Потактовий режим
  • Арифметичні операції
  • Симулятор ЕОМ

Зміст і розділи

  1. Теоретичні відомості
  2. Хід виконання роботи
  3. Описати призначення прапорців Регістру Ознак
  4. Дослідження додавання двох чисел
  5. Дослідження віднімання двох чисел
  6. Дослідження інструкцій LOAD, STORE та SUB
  7. Висновок
Для кого:Студенти технічних спеціальностей вищих навчальних закладів, які вивчають архітектуру комп'ютерів.
Викладачі:Викладач кафедри СКС

Ключові поняття

регістр ознакінструкціяадресні інструкціїоперандмашинний кодмікропрограмапрапорець

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки Національний університет „Львівська політехніка” Кафедра СКС Звіт з лабораторної роботи № 2 з дисципліни: “Організація та функціонування комп’ютерів” на тему: “ Набір інструкцій навчального комп’ютера. Загальний порядок виконання інструкцій.” Тема: Набір інструкцій навчального комп’ютера. Загальний порядок виконання інструкцій. Мета: 1. Засвоїти порядок виконання програм у комп’ютері. Ознайомитися з форматом та набором інструкцій симулятора навчальної ЕОМ. Засвоїти формати і способи використання інструкцій звертання до пам’яті та інструкцій арифметичних операцій; 2. Засвоїти призначення регістра ознак процесора; 3. Ознайомитися з потактовим режимом роботи навчального комп’ютера. 4. Засвоїти базовий порядок виконання інструкції навчального комп’ютера та навчитися досліджувати хід виконання окремих інструкцій. 1. Теоретичні відомості Усі інструкції у навчальному комп’ютері можна поділяти за такими напрямками: За форматом коду інструкції; За призначенням. Нагадаємо, що за форматом коду інструкції є адресні та безадресні (див. розділ ІІ “Опис архітектури навчального комп’ютера DeComp”). Безадресні інструкції взагалі не використовують будь-які операнди, як, наприклад, інструкція HALT або інструкції зсувів. У таких інструкціях однозначно відомо, звідки брати операнди для операції, наприклад: - інструкція NOT однозначно працює з акумулятором (інвертує його вміст); - так само роблять усі інструкції зсувів (LSL, ASR, ROR та інші); - а от інструкції INPUT та OUTPUT працюють не лише з акумулятором, але й з портами вводу (INPUT) та виводу (OUTPUT). У свою чергу, адресні інструкції для виконання своєї операції потребують операнди, в якості яких може бути вміст будь-якої з 4096 комірок пам’яті симулятора. Отже, окрім коду операції, який займає найстарші 4 розряди машинного коду інструкції (від 15-го до 12-го ), решту розрядів займає 12-розрядна адреса комірки пам’яті, значення вмісту якої стане операндом і буде оброблятись у даній інструкції. Усі інструкції навчального комп’ютера за призначенням можна розділити на такі групи: 1) інструкції звертання до пам’яті (LOAD та STORE); 2) арифметичні інструкції (ADD та SUB); 3) логічні інструкції (AND, OR, XOR та NOT); 4) інструкції вводу/виводу (INPUT та OUTPUT); 5) інструкції керування виконанням програми: а) інструкція зупинки (HALT); б) інструкції умовних переходів (JNZ, JZ, JP, JM, JNC та JC); в) інструкція безумовного переходу (JMP); 6) інструкції зсувів (вліво (Left) та вправо (Right)): а) інструкції логічного зсуву (LSL та LSR); б) інструкції арифметичного зсуву (ASL та ASR); в) інструкції циклічного зсуву (ROL та ROR); г) інструкції циклічного зсуву через тригер ознаки переносу C (RCL та RCR). 2. Хід виконання роботи 1. Описати призначення прапорців Регістру Ознак; Регістр ознак призначений для аналізу результату арифметичних дій. Він складається з трьох тригерів: Z (Zero - нуль) – цей прапорець змінює своє значення на 1 коли у результаті обчислення в акумуляторі знаходиться нуль. S (Sign - знак) – цей прапорець відслідковує від’ємні числа, змінює своє значення на одиницю коли в результаті обчислень в акумуляторі записане від’ємне число. C (Carry - перенос) – цей прапорець інформує про переповнення розрядної сітки, встановлюється в 1, коли у результаті арифметичної операції (додавання чи віднімання) виникає перенос із старшого розряду результату або при виконанні операції зсуву вправо чи вліво крайній розряд числа вийшов за межі розрядної сітки. 2. Ввести у симулятор і виконати дослідження у потактовому режимі програми додавання двох чисел, яка була підготована у роботі № 1. Записати результати – мікропрограму виконання з необхідними поясненями. Як і у першій роботі перед вводом програми я записую числа та у комірки з адресою та . Після цього я вводжу програму з лабораторної роботи №1. Задана програма у мнемонічних кодах: Програма у машинних кодах: - двійковий код 1-ої інструкції - двійковий код 2-ої інструкції - двійковий код 3-ої інструкції - двійковий код 4-ої інструкції Коли числа і програма записані до пам’яті я запускаю програму у потоковому режимі. Дослідження додавання двох чисел у по тактовому режимі інструкція комп’ютер регістр 3. Ввести у симулятор та виконати дослідження у покроковому режимі програми, яка відніматиме два числа А і В для значень, коли А = В, А > В і А < В, вибравши довільні відповідні значення. Виписати результати виконання дослідження і значення прапорців ознак у таблицю, взірець якої поданий у роботі № 1. Поясніть отримані результати Моя програма для віднімання двох чисел: Перша умова(А=В) вимагає двох рівних чисел для обчислень, я вибрав число 44. Число у двійковому коді: Виконую програму у покроковому режимі, покази регістрів: У цьому випадку в регістрі ознак жовтим кольором засвітилося значення Z. Це означає, що результатом програми є нуль. І справді, якщо прочитати значення результату у комірці (111)2 то там буде (0000 0000 0000 0000)2. Виконуємо програму змінивши умову(А > В), для цієї умови я вибрав такі числа: Покази регістрів: Регістр ознак показує значення , адже ми віднімали числа які задовільнять умову(А > В), тому результат не є від’ємним числом чи нулем. Запустимо знову змінивши умову(А<В), обміняємо числа 44 і 37 місцями. Покази регістрів: В даному випадку засвітилися жовтим кольором прапорці S і C. S означає, що результатом є від’ємне число. С означає, що це результат вийшов за межі розрядної сітки, тобто виник перенос із старшого розряду результату і крайній розряд числа вийшов за межі розрядної сітки. Якщо прочитати значення результату у комірці (111)2 то там буде (1111 1111 1111 1001)2. 5. Ввести у симулятор та виконати дослідження у потактовому режимі 3-х окремих інструкції – LOAD, STORE i SUB. Пояснити необхідну підготовку числових даних, виписати порядок виконання інструкцій у вигляді мікропрограм із вказанням реальних значень регістрів і поясненням дій, що виконуються у кожному такті. Load Інструкція LOAD(Машинний код: 0000 аааа аааа аааа), зчитує дані з комірки пам’яті з адреси «аааа аааа аааа» і записує їх до акумулятора. Вона обробляє лише один операнд, що повинен бути заздалегідь підготовлений. У комірку з адресою 010(0000000002) записую інструкцію LOAD 05 (0000 0000 0000 0101), а в комірку з адресою 52(0000000001012) записую число 1010(00000000000010102). У ЛАІ записую адрес цієї інструкції, тобто 010(0000000002). Результатом роботи програми повинно бути завантаження числа 00000000000010102 до Акумулятора. Store Інструкція STORE 01 (Машинний код: 0001 aaaa aaaa aaaa), записує з акумулятора число в комірку з адресою «аааа аааа аааа». Інструкція обробляє однин операнд, що повинен бути підготовлений заздалегідь. Записую в комірку з адресою 010(0000000002) інструкцію Store 11 (0001 0000 0000 1011). Тоді в Акумулятор записую число 1010(00000000000010102). У ЛАІ записую адрес цієї інструкції, тобто 010(0000000002). Результатом роботи програми повинно бути завантаження числа з Акумулятора до комірки пам'яті з адресою. 1110(0000000010112). SUB Інструкція SUB (Машинний код: 0011 aaaa aaaa aaaa), віднімає два числа(від того, що міститься в акумуляторі віднімає число, що знаходиться у комірці з адресю «аааа аааа аааа»). Дана інструкція обробляє два операнда, які повинні бути заздалегідь підготовлені. Записую в комірку з адресою 010(0000000002) інструкцію Sub 11 (0011 0000 0000 1011). В комірку з адресою 1110(00000000000010112) записую число 1010(00000000000010102). В Акумулятор записую число 2110(00000000000101012). У ЛАІ записую адрес цієї інструкції, тобто 010(0000000002). Результатом роботи програми повинно бути збереження числа 1110(00000000000010112) в Акумуляторі, бо 21-10=11. 3.Висновок
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!