Предмет: Информатика, автор: Стас1232

умножение чисел ассемблер (TASM)
.MODEL small
.STACK 256
.code
start:
MOV BL,3
MOV AL,2
MUL BL
mov ax,4C00h
int 21h
END start

Не работает, компилит но нету вывода


srzontmp: Было бы странно, если бы что -то выводилось. mov ax,4C00h
int 21h - это завершение программы, а где вывод на экран?
Стас1232: Как вывести???
Стас1232: Допеши пожалуйста
srzontmp: Вывод на экран будет в пять раз больше, чем Ваша программа.
Стас1232: Не могли бы вы мне помочь с решение данной проблемы ?
srzontmp: А Вы сможете преподавателю объяснить, что там написано?
Стас1232: Да
Стас1232: tasm 1.4
srzontmp: Договорились.
Стас1232: model small
stack 512
dataseg
a db 6
b db 5
res db 0
codeseg
start:
mov ax, @data
mov ds, ax
mov al, a
mov bl, b
mul bl
mov res, bl
mov ah, 4ch
int 21h
end start

Ответы

Автор ответа: srzontmp
1
.MODEL small 
.STACK 256 
.code
start: 
    MOV BL,3 
    MOV AL,2 
    MUL BL
; вывод содержимого регистра ax на экран
    mov bl,10
    mov cx,0
b:  div bl      ;  в al - частное, ah - остаток
    add ah,48  ;  в ah - код младшей цифры
    push ax
    mov ah,0 
    inc cx
    cmp al,0
    jne b
 ; вывод на экран через BIOS
c:  pop ax
    mov al,ah
    mov ah, 0eh
    int 10h     ; вывод символа
    dec cx
    jnz c
 ; ожидание ввода с клавиатуры
    mov ah,01h
    int 21h
; завершение программы
    mov ax,4C00h
    int 21h 
END start


Стас1232: Друг просит сделать вычитание, если вам не сложно
srzontmp: А что там писать, то? Меняете первые три строчки MOV BL,3
MOV AL,2
MUL BL на следующие: mov ax,354
mov bx,150
sub ax,bx
остальное оставляете как есть.
Стас1232: Большое вас спасибо
srzontmp: Пожалуйста.
Стас1232: Сделали альтернативу
Стас1232: model small
stack 512
dataseg
a db 6
b db 5
res db 0
codeseg
start:
mov ax, @data
mov ds, ax
mov al, a
mov bl, b
mul bl
mov res, bl
mov ah, 4ch
int 21h
end start
Похожие вопросы
Предмет: География, автор: lida2090
Предмет: Алгебра, автор: ariell3996
Предмет: Математика, автор: таньчик1