Вычисление функции, разветвление - Assembler
Решение задачи: «Вычисление функции, разветвление»
textual
Листинг программы
LOCALS .model small .stack 100h .data A dw 157 B dw 100 R dw ? .code main proc mov ax, @data mov ds, ax mov ax, A cmp ax, B je @@Equal jg @@Greater @@Lower: add ax, A ;ax:=3*A add ax, A sub ax, 5 ;ax:=3*A-5 cwd ;(dx:ax):=3*A-5 idiv B ;ax:=(3*A-5)/B @@Greater: imul ax ;(dx:ax):=A*A*A imul A add ax, B ;(dx:ax):=A*A*A+B adc dx, 0 idiv A ;ax:=(dx:ax)/A jmp @@Finish @@Equal: mov ax, 4 ;ax:=4 @@Finish: mov ax, R mov ax, 4C00h int 21h main endp end main
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д