17485

Вивчення арифметичних команд мікропроцесора i8086

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

Информатика, кибернетика и программирование

Лабораторна робота №2 З дисципліни СПіОС на тему Вивчення арифметичних команд мікропроцесора i8086 Лабораторна робота №2 Мета: Вивчити арифметичні команди мікропроцесора i8086 і правила їх використання. Завдання: Реалізувати можливість введення даних з клавіа...

Украинкский

2013-07-01

37.37 KB

1 чел.

Лабораторна робота №2

З дисципліни СПіОС

на тему

Вивчення арифметичних команд мікропроцесора i8086

Лабораторна робота №2

Мета:

Вивчити арифметичні команди мікропроцесора i8086 і правила їх використання.

Завдання:

Реалізувати можливість введення даних з клавіатури і вивід результату обчислення на екран.

5

SI+BL-AX-(BL+CX)

AX=5, BX=12, CX=2,   SI=9

Лістинг програми:

include 'emu8086.inc'

data segment

   ;ogoloshennia zminnyh

   A1 DW 0

   BLICX DW 0

   SIIBL DW 0

   pkey db "PRESS ANY KEY...$"

ends

stack segment

   dw   128  dup(0)

ends

code segment

start:

set segment registers:

   mov ax, data

   mov ds, ax

   mov es, ax

   ;BEGIN         

   

   ;  vyvid povidomlennia

   PRINTN "INput AX"

   ;  vvid chysel

   CALL SCAN_NUM

   MOV AX, CX

   PRINTN ""     

   PRINTN "INput BX"

   CALL SCAN_NUM

   MOV BX, CX

   PRINTN ""

   PRINTN "INput CX"

   CALL SCAN_NUM

   MOV A1, CX

   PRINTN ""

   PRINTN "INput SI"

   CALL SCAN_NUM

   MOV SI, CX

   MOV CX, A1

   PRINTN ""

   ;dodavannia BL i CX

   MOV A1, AX

   MOV AX, BX

   CBW

   MOV BX, AX

   ADD CX, BX

   MOV BLICX, CX

   ;dodavannia SI i BL

   ADD BX, SI

   MOV AX, A1

   ;vidnimannia SI+BL i AX

   MOV SIIBL, BX

   SUB SIIBL, AX

   ;vidnimannia SI+BL-AX i BL+CX

   MOV AX, BLICX

   SUB SIIBL, AX

   PRINTN ""

   PRINT "Result: "

   MOV AX, SIIBL

   CALL PRINT_NUM

   PRINTN ""

       

   ;END

           

   lea dx, pkey

   mov ah, 9

   int 21h        ; output string at ds:dx

   

   ; wait for any key....    

   mov ah, 1

   int 21h

   

   mov ax, 4c00h ; exit to operating system.

   int 21h    

ends

 

DEFINE_SCAN_NUM

DEFINE_PRINT_NUM

DEFINE_PRINT_NUM_UNS

end start ; set entry point and stop the assembler.

Результати роботи програми:

Запускаємо програму, вводимо числа:

Після натискання Enter виводиться результат обчислення:

Висновок:  У даній лабораторній роботі було вивчено арифметичні операції додавання і віднімання, також застосовано операцію перетворення типу чисел, використано змінні.


 

А также другие работы, которые могут Вас заинтересовать

17028. Побудова графіків в MathCad 62 KB
  Лабораторна робота № 6 Тема: Побудова графіків в MathCad Мета: Відробити прийоми побудови графіків у середовищі MathCad Обладнання: ПК ПЗ MathCad. Ход работы 1. Побудувати графіки функційтаблиця 1 у спільній системі координат а функцію з таблиці 2 що задана параметричноокр...
17029. Рішення диференціальних рівнянь в MathCad 61 KB
  Лабораторна робота № 7 Тема: Рішення диференціальних рівнянь. Мета: Відробити прийоми рішення звичайних диференціальних рівнянь використовуючи інструменти MathCad. Обладнання: ПК ПЗ MathCad. Вирішити задачу Коші використовуючи блок Given/Оd...
17030. Розв’язання задач математичної статистики в системі MathCad 37 KB
  Лабораторна робота № 8 Тема: розвязання задач математичної статистики в системі MathCad. Мета: ознайомитися з можливостями системи MathCad для розвязання задач математичної статистики: з убудованими функціями для знаходження параметрів регресії. Індивідуальне за
17031. Створення елементів керування на екранній формі в Visual BASIC 1.93 MB
  Лабораторна робота №9 Тема. Створення елементів керування на екранній формі в Visual BASIC. Мета: відробити прийоми створення елементів керування на екранній формі та встановлення їх властивостей в Visual BASIC 6.0 . Обладнання: ПК ПЗ Visual BASIC 6.0 Хід роботи Індивідуальне за
17032. Використання операторів умов в Visual BASIC 41.5 KB
  Лабораторна робота №10 Тема: Використання операторів умов Мета: відробити прийоми використання оператори умов в Visual BASIC 6.0 . Обладнання: ПК ПЗ VB 6.0 Хід роботи Індивідуальне завдання. Знайти значення функції використавши вікно повідомлень для вводу та виводу ...
17033. Програмування циклів з лічильником в Visual BASIC 33 KB
  Лабораторна робота № 11 Тема: Програмування циклів з лічильником Мета: відробити прийоми використання циклів з лічильником в Visual BASIC 6.0 . Обладнання: ПК ПЗ VB 6.0 Хід роботи Індивідуальне завдання. Обчислити суму або добуток використовуючи ввід та вивід даних чер
17034. Умовні оператори циклу і переклад в інших системах числення в Visual BASIC 45.5 KB
  Лабораторна робота №12 Тема. Умовні оператори циклу і переклад в інших системах числення Мета: відробити прийоми використання умовних циклів і розглянути переклад у системи числення за допомогою VB 6.0. Обладнання: ПК ПЗ VB 6.0. Хід роботи Індивідуальне завдання. ...
17035. Послідовності чисел в Visual BASIC 34.5 KB
  Лабораторна робота №13 Тема. Послідовності чисел Мета: відробити прийоми використання циклів з лічильником і розглянути алгоритм роботи з членами послідовності чисел. Обладнання: ПК ПЗ VB 6.0. Хід роботи Індивідуальне завдання. Скласти рекур...
17036. Одномірні масиви в Visual BASIC 39 KB
  Лабораторна робота №14 Тема. Одномірні масиви Мета: відробити прийоми створення одномірних статичних масивів у VB. Обладнання: ПК ПЗ VB 6.0. Хід роботи Індивідуальне завдання. Скласти програму в VB 6.0 для розвязання задачі. 19 ...