[FASM] Объявление числа - Assembler

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

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

Как правильно объявить численную переменную, условный переход не работает, когда сравниваешь с переменной. Но работает, когда сравниваешь 2 десятичных числа. Целочисленная переменная bed. Fasm
org 100h
jmp start
buff db 80,0, 80 dup(0),'$'
value1 db 10,13,"Enter the string $"
endl db 10, 13, '$'
bed db 1
s db 80,0,80 dup(0),'$'
 
start:
 
       call read
       call print
        ;if

       mov dx,bed
       cmp dx,1
       je @else
       call  print

    ;    mov ah, 0x9
    ;    mov ax,temp
    ;    int 0x21

     ;   mov ah, 0x9
    ;    mov ax,temp1
    ;    int 0x21
 
        jmp endif
 
@else:
 
        mov ax,buff
        mov word [s],ax
        call print
endif:
       int 16h
       int 20h
 
print:
mov dx,word [s]
mov ah,09h
int 21h
call newline
ret
 
newline:
mov dx,endl
mov ah,09
int 21h
ret
 
read:
mov ah,3fh
mov dx,  buff
int 21h
ret

Решение задачи: «[FASM] Объявление числа»

textual
Листинг программы
mov dl, [bed]
cmp dl, 1

Объяснение кода листинга программы

  1. mov dl, [bed] - в данном коде происходит загрузка байта из памяти по адресу bed в регистр dl.
  2. cmp dl, 1 - после загрузки байта в регистр dl, происходит сравнение этого байта со значением 1.

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


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

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

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