Перевод из 10 системы счисления в 16 - Assembler

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

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

Помогите, пожалуйста! Дали задание, а я в ассемблере очень плохо разбираюсь. Нужно написать программу перевода числа из 10 системы счисления в 16.

Решение задачи: «Перевод из 10 системы счисления в 16»

textual
Листинг программы
model   tiny
.code
org 100h
start:  mov ah,9
    lea dx,dbEnter
    int 21h
 
    mov bx,10
    xor di,di
@@01:   xor ax,ax
    int 16h
    cmp al,13
    jz  @@02
    cmp al,'0'
    jb  @@01
    cmp al,'9'
    ja  @@01
    push    ax
    and ax,0fh
    xchg    di,ax
    xor dx,dx
    mul bx
    add di,ax
    pop ax
    int 29h
    jmp short @@01
 
@@02:   mov ah,9
    lea dx,dbResult
    int 21h
 
    mov bx,16
    xor cx,cx
    mov ax,di
@@03:   xor dx,dx
    div bx
    push    dx
    inc cx
    or  ax,ax
    jnz @@03
@@04:   pop ax
    cmp al,9
    jbe @@05
    add al,7
@@05:   add al,'0'
    int 29h
    loop    @@04
    xor ax,ax
    int 16h
    ret
dbEnter     db  10,13,'Enter number:$'
dbResult    db  10,13,'Result:$'
    end start

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


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

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

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