DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

Алгоритми виконання арифметичних операцій над багаторозрядними числами

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

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

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

Рік:
2015
Тип роботи:
Інші
Предмет:
Архітектура комп'ютерів
Група:
КН

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ Національний університет Львівська політехніка Кафедра CАПР До лабораторної роботи №8 З курсу “Архітектура комп’ютерів” На тему: “ Алгоритми виконання арифметичних операцій над багаторозрядними числами”. Тема: Алгоритми виконання арифметичних операцій над багаторозрядними числами Мета: Вивчити способи виконання арифметичних операцій над багаторозрядними числами. __________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________  Виконати завдання з лабораторної роботи №7. Дані вводити з клавіатури в ASCII форматі. Результати виводити на екран в десятковій системі числення. Передбачити неправильність введення чисел.   Для реалізації поставленого завдання була розроблена наступна програма: .model tiny .stack 256 ;б⥪ 256 Ў ©в .code org 100h start: mov ax,seg @data mov ds,ax ;code segment initialize mov dx,offset m1 mov ax,0900h int 21h ;vuvodumo povidomlenna ;-------------------------------------- ;Vvedenna call StrtoInt mov word ptr [dig1],ax ;-------------------------------------- call StrtoInt mov word ptr [dig2],ax ;-------------------------------------- call StrtoInt mov word ptr [dig3],ax ;-------------------------------------- call StrtoInt mov word ptr [dig4],ax ;-------------------------------------- call StrtoInt mov word ptr [dig5],ax ;-------------------------------------- call PrintCaret ;perevid karetku ;-------------------------- ;clear registers xor ax,ax xor bx,bx xor dx,dx ;-------------------------- ;-------------------------- ;pochatok obchuslenna mov ax,word ptr[dig1] mov bx,word ptr[dig2] div bx mov tempd,ax mov ax,word ptr[dig3] mov bx,word ptr[dig4] mul bx add ax,tempd mov bx,word ptr[dig5] sub ax,bx ;---------------------------- call Puts ;Vmist AX na ekran mov ax,04c00h ;vuhid v dos int 21h puts: push ax mov bx,ax xor si,si mov ax,10000 mov word ptr [d],ax mov cx,5 ;div digit to 10000,1000,100,10,1 n2: xor dx,dx ;reset DX mov ax,bx div word ptr [d] ;dilumo na dilnuk add al,'0' mov byte ptr string[si],al sub al,'0' inc si mul word ptr [d] ;mul na dilnuk sub bx,ax xor dx,dx mov ax,word ptr [d] div word ptr [ten] mov word ptr [d],ax loop n2 ;povt zukl mov ax,0A0Dh mov word ptr string[si],ax inc si inc si mov al,24h mov byte ptr string[si],al mov dx,offset string mov ax,0900h int 21h pop ax ret PrintCaret: push ax mov dx,offset crn mov ax,0900h int 21h pop ax ret StrToInt: ;zcutyvanna strichku mov dx,offset sm ;v DX vkaz steky mov ah,0Ah int 21h call PrintCaret xor cx,cx mov cl,byte ptr ds:[dov] cmp cx,0 ;perevirka strichku na nepr vvid je error xor si,si xor bx,bx xor dx,dx mov di,cx n1: dec di mov dl,byte ptr bs[di] ;read ASCII sub dl,'0' cmp dl,9 ;perevirka chu bilshe 9 ja error mov ax,word ptr chn[si] mul dx add bx,ax jc error cmp dl,0 jne error inc si inc si loop n1 mov ax,bx ret error: mov dx,offset m2 mov ax,0900h int 21h jmp StrtoInt dig1 dw 0 dig2 dw 0 dig3 dw 0 dig4 dw 0 dig5 dw 0 rez dw 0 ;rezultat tempd dw 0 ;temp rez sm db 6 dov db ? bs db 6 dup (" ") m1 db "Vvedit 5 zufr, enter nastypne dane",13, 10, 24h m2 db "Pomulka!!!.Mojna vvodutu tilku zufru",13, 10, 24h crn db 13,10,24h chn dw 1,10,100,1000,10000 d dw 0 ten dw 10 string db 8 dup (" ") end start   Висновок: На протязі виконання лабораторної роботи я вивчив способи виконання арифметичних операцій над багаторозрядними числами, отримав практичні навички складання і налагодження програм з використанням різних арифметичних комадн команд, процесора і 8086 .
Антиботан аватар за замовчуванням

2015

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Нічого не вибрано
0%

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

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

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

Admin

26.02.2023 12:38

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