请问汇编怎样用乘法

来源:百度知道 编辑:UC知道 时间:2024/09/24 08:24:30
谁能举个例子

;将变量a和变量b相乘,结果存入s
assume cs:code,ds:data
;-----------------------------
data segment
a db 6
b db 4
s dw ?
data ends
;-----------------------------
code segment

start:
mov ax,data
mov ds,ax

mov al,a ;当mul指令的操作数为字节型数据时,一个乘数在al中
mul byte ptr b ;在mul指令中给出另一个乘数
mov s,ax ;mul指令执行后,结果存放在ax中

mov ax,4C00H
int 21H

code ends
;-----------------------------
end start

;结果在3-4位,最小为100,最大为9801,规定均以四位表示如100显示为0100
data segment
msg_input db 'input two numbers:$'
msg_result db 'the result:$'
x dw ?;运算时的中转站
y dw ?
data ends

code segment
assume cs:code,ds:data
main proc near
start:
mov ax,data
mov ds,ax

mov dx,offset msg_input
mov ah,09h
int 21h
call crlf
;--接收数字并作乘法运算,将最终结果存放于bx寄存器中--
call decibin
call crlf
mov x,bx
call decibin<