Зделайте пожалуста уравнение на завтра очень надо - Assembler
Формулировка задачи:
a/b+1 a>b
-2 a=b
(a-b)/a a<b
Решение задачи: «Зделайте пожалуста уравнение на завтра очень надо»
textual
Листинг программы
Datas segment a dw 1 b dw 10 c1 dw 1 c2 dw -25 c3 dw 5 c4 dw -1 ostacha dw ? x dw ? z dw ? mesg db "Delenie na nol ! $"; mesg1 db "-2 $"; Datas ends Codes segment Assume cs:Codes, ds : Datas First: MOV ax, Datas mov ds,ax mov ax,a cmp ax,b jg @if1 jl @if3 je @if2 @if1: xor ax, ax mov ax,b or ax,ax jz @null mov ax,a cwd idiv b adc ax,c1 jmp @viv @if3: xor ax, ax mov ax,a or ax,ax jz @null mov ax,a sub ax,b cwd idiv a jmp @viv @if2: xor ax, ax mov AH, 09h mov DX, offset mesg1 int 21h jmp @v @null: mov AH, 09h mov DX, offset mesg int 21h jmp @v ;vivod @viv: mov x,ax mov ostacha,dx jmp outtext outtext: mov ax,x push ax cmp ax,0 jns @plus mov ah,02h mov dl,'-' int 21h pop ax neg ax @plus: xor cx,cx mov bx,10 @dvsn:xor dx,dx div bx push dx inc cx test ax,ax jnz short @dvsn mov ah,02h @vivod:pop dx add dl,30h int 21h loop @vivod mov ah,02h mov dl,'.' int 21h mov ax,ostacha push ax xor cx,cx mov bx,10 @dvsn_1:xor dx,dx div bx push dx inc cx test ax,ax jnz short @dvsn_1 mov ah,02h @vivod_1:pop dx add dl,30h int 21h loop @vivod_1 ;exit @v: mov ah,4ch mov Al, 0 int 21h Codes ends end First
Объяснение кода листинга программы
- Переменные a, b, c1, c2, c3, c4, ostacha, x, z, mesg, mesg1, AH, DX, bx, cx, dx, ah, dl, al, ch и bh используются для выполнения арифметических операций и вывода текста на экран.
- Код выполняет различные арифметические операции в зависимости от значения переменной a по сравнению с переменной b.
- Если значение a больше b, код выполняет деление a на b и добавляет результат к переменной c1.
- Если значение a меньше или равно b, код выполняет вычитание b из a и добавляет результат к переменной c1.
- Если значение a равно нулю, код выводит на экран сообщение
Delenie na nol !
. - Если значение a не равно нулю, код выводит на экран значение a в десятичной форме с использованием функции int 21h.
- Затем код выполняет аналогичные действия для переменной ostacha.
- Код также выводит на экран символ
-
и точку в десятичной форме для переменной ostacha. - Код завершается функцией int 21h, которая обеспечивает корректное завершение работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д