|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
23.01.2010, 10:35 | #1 |
Пользователь
Регистрация: 17.12.2008
Сообщений: 51
|
Арифметические операции!!( исправить )
Нужно чтоб вычисляло по формуле a/b+c и выделяло остаток!!!
model small .stack 100h .data mes1 db 'vvedite a$' mes2 db 0ah,0dh,'ўўҐ¤ЁвҐ b$' mes3 db 0ah,0dh,'ўўҐ¤ЁвҐ c$' mes4 db 0ah,0dh,'otvet: $' mes5 db 0ah,0dh,'ost: $' d db ? a db ? b db ? c db ? n db ? otvet db ?,?,?,'$' ost db ?,?,?,'$' .code main: mov ax,@data mov ds,ax xor ax,ax mov ah,09h mov dx,offset mes1 int 21h mov ah, 01h int 21h ; ввод первого символа и запись его в al sub al, 30h ; запись в al первой цифры mov ah,0 ; расширение до слова mov bx,10 mov cx,ax ; запись в cx первой цифры M1: mov ah,01h int 21h ; запись в al следующего символа cmp al,0dh ; сравнение с кодом Enter je End1 ; конец ввода sub al, 30h ; в al – следующая цифра cbw ; расширение до слова xchg ax,cx ;? mul bx ;? add cx, ax ;? jmp M1 ; продолжение ввода End1: mov a, cl mov ah,09h mov dx,offset mes2 int 21h mov ah, 01h int 21h ; ввод первого символа и запись его в al sub al, 30h ; запись в al первой цифры mov ah,0 ; расширение до слова mov bx,10 mov cx,ax ; запись в cx первой цифры M2: mov ah,01h int 21h ; запись в al следующего символа cmp al,0dh ; сравнение с кодом Enter je End2 ; конец ввода sub al, 30h ; в al – следующая цифра cbw ; расширение до слова xchg ax,cx ;? mul bx ;? add cx, ax ;? jmp M2 ; продолжение ввода End2: mov b, cl mov ah,09h mov dx,offset mes3 int 21h mov ah, 01h int 21h ; ввод первого символа и запись его в al sub al, 30h ; запись в al первой цифры mov ah,0 ; расширение до слова mov bx,10 mov cx,ax ; запись в cx первой цифры M3: mov ah,01h int 21h ; запись в al следующего символа cmp al,0dh ; сравнение с кодом Enter je End3 ; конец ввода sub al, 30h ; в al – следующая цифра cbw ; расширение до слова xchg ax,cx ;? mul bx ;? add cx, ax ;? jmp M3 ; продолжение ввода End3: mov c, cl mov al,a div b mov bl,c add al,bl mov ah,0 div bl mov d,ah cbw mov n,al mov bl, 10 mov al,n mov ah,0 ; расширение N в ax до слова div bl ; ah=c, al=ab add ah, 30h mov otvet+2, ah ; записали последнюю цифру mov ah,0 ; al=ab, расширили до слова div bl ;ah=b, al=a add ax,"00" ; ah=b+’0’, al=a+’0’ mov otvet+1, ah ;записали среднюю цифру mov otvet, al ; записали первую цифру mov ah,09h mov dx,offset mes4 int 21h mov ah,09h mov dx,offset otvet int 21h mov bl, 10 mov al,d mov ah,0 ; расширение N в ax до слова div bl ; ah=c, al=ab add ah, 30h mov ost+2, ah ; записали последнюю цифру mov ah,0 ; al=ab, расширили до слова div bl ;ah=b, al=a add ax,"00" ; ah=b+’0’, al=a+’0’ mov ost+1, ah ;записали среднюю цифру mov ost, al ; записали первую цифру mov ah,09h mov dx,offset mes5 int 21h mov ah,09h mov dx,offset ost int 21h mov ah, 01h int 21h mov ax,4c00h int 21h end main
Mega HiP-Hop--- http://muzxclusive.com/
|
23.01.2010, 11:46 | #2 |
Форумчанин
Регистрация: 02.04.2008
Сообщений: 358
|
остаток чего? вернее от чего
неплохо пишу на ассемблере для 80х86
icq: 3(один)7748666 mail: airyashov(а)inbox.ru |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Паскаль, арифметические выражения. | netcher | Помощь студентам | 1 | 09.03.2009 15:48 |
Арифметические операции в различных системах счисления (Си) | LiToRBoL | Помощь студентам | 7 | 08.01.2009 18:13 |
Арифметические выражения | spirit0k | Общие вопросы C/C++ | 0 | 26.10.2008 18:06 |
Арифметические операции Ассемблер | BAV | Помощь студентам | 9 | 05.03.2008 00:21 |