Сумма положительных делителей - Assembler

Узнай цену своей работы

Формулировка задачи:

2.Дано целое число N (> 1). Если оно является недостаточным, то есть сумма положительных делителей, кроме самого себя, меньше N, то вывести True, иначе вывести False

Решение задачи: «Сумма положительных делителей»

textual
Листинг программы
model tiny
.code
org 100h
begin:
@@0:    mov ah,9
    lea dx,dbEnter
    int 21h
    xor di,di
    mov bx,10
@@1:    xor ax,ax
    int 16h
    cmp al,13
    jz  @@2
    cmp al,'0'
    jl  @@1
    cmp al,'9'
    ja  @@1
    int 29h
    and ax,0fh
    xchg    di,ax
    mul bx
    add di,ax
    or  dx,dx
    jnz @@0
    jmp short @@1
@@2:    mov cx,di
    jcxz    @@0
    dec cx
    je  @@0
    xor si,si
@@3:    xor dx,dx
    mov ax,di
    div cx
    or  dx,dx
    jnz @@4
    add si,cx
    jc  @@5
@@4:    loop    @@3
    lea dx,dbTrue
    cmp si,di
    jl  @@6
@@5:    lea dx,dbFalse
@@6:    mov ah,9
    int 21h
    xor ah,ah
    int 16h
    ret
dbEnter db  10,13,'Enter number:$'
dbFalse db  10,13,'False$'
dbTrue  db  10,13,'true$'
    end begin

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.429 из 5
Похожие ответы