汇编语言之数据处理的2个基本问题(2)

简介: 汇编语言之数据处理的2个基本问题(2)

6、mul指令

Mul为乘法指令,使用mul做乘法的时候,注意以下两点:


1. 两个相乘的数:这两个相乘的数,要么都是8位,要么都是16位,如果是8位,一个默认放在al中,另一


个放在8位寄存器或内存字节单元中;如果是16位,一个默认放在ax中,另一个放在16位寄存器或内存字单元


中。


2.结果:如果是8位乘法,结果默认放在ax中,如果是16位乘法,结果高位默认在dx中存放,低位在ax


中存放。


指令格式如下:


Mul 通用寄存器


Mul 内存单元


内存单元可以用不同的寻址方式给出,比如:


Mul byte ptr DS:[7102]    ;8位乘法。


Mul word ptr [bx+si+8]    ;16位乘法。


例1:计算100×10。


100和10都小于255,可以做8位乘法,代码如下:


Mov al, 100


Mov bl, 10


Mul bl


结果:ax=al×bl=100×10=1000(3E8H)


例2:计算100×10000。


100小于255,可10000大于255,所以必须做16位乘法,代码如下:


Mov ax, 100


Mov bx, 10000


Mul bx


结果:ax×bx=100×10000=1000000(F4240H)


Ax=4240H  dx=FH



7、div指令

Div是除法指令,使用div做除法的时候,应注意以下问题:


1. 除数:有8位和16位两种,在一个寄存器或内存单元中。


2. 被除数:如果除数为8位,被除数则为16位,默认放在ax中;如果除数为16位,被除数则为32位,在


Dx和ax中存放,dx存放高16位,ax存放低16位。


3. 结果:如果除数为8位,则al存储结果的商,ah存储结果的余数;如果除数为16位,则ax存储结果的


商,dx存储结果的余数。


指令格式如下:


Div 通用寄存器


Div 内存单元


内存单元可以用不同的寻址方式给出,比如:


Div byte ptr DS:[21a5]    ;除数为8位的除法。


Div word ptr [bx+si+8]    ;除数为16位的除法。


例1:计算100001÷100。


被除数100001为32位,转化成16进制为186a1H,低16位值86a1H放在ax中,高16位值1H放在


Dx中,除数100转化为16进制64H后,放在一个16位寄存器中,代码如下:


Mov dx, 1H


Mov ax, 86a1H


Mov bx, 64H


Div bx


结果:(dx×10000H+ax)÷bx=186a1H÷64H=3E8H余1。


Ax=3e8H(1000)  dx=1H


例2.计算1001÷100。


被除数1001可用ax存放,除数100可用8位寄存器存放,代码如下:


Mov ax, 1001


Mov bl, 100


Div bl


结果:ax÷bl=1001÷100=10余1。


Al=10  ah=1


相关文章
|
5月前
|
存储 数据处理
8086 汇编笔记(七):数据处理的两个基本问题
8086 汇编笔记(七):数据处理的两个基本问题
|
数据处理
汇编语言之数据处理的2个基本问题1
汇编语言之数据处理的2个基本问题1
116 0
汇编语言之数据处理的2个基本问题1
|
数据处理
【汇编语言/底层开发】8、数据处理的两个基本问题
标题中所指的两个基本问题是:(1)处理的数据在什么地方?(2)要处理的数据有多长?要使得计算机正常工作,这两个问题必须给予说明,否则无法工作。 1、bx, si, di, bp 这四个寄存器用于内存寻址的规则有: (1)在8086中只有这四个寄存器可以用于[]中进行内存单元寻址。
908 0
|
7月前
|
存储 Unix 编译器
汇编语言----X86汇编指令
汇编语言----X86汇编指令
233 2
|
2月前
|
存储 移动开发 C语言
【ARM汇编速成】零基础入门汇编语言之指令集(三)
【ARM汇编速成】零基础入门汇编语言之指令集(三)
|
2月前
|
编译器 C语言 计算机视觉
【ARM汇编速成】零基础入门汇编语言之指令集(二)
【ARM汇编速成】零基础入门汇编语言之指令集(二)
167 0
|
7月前
|
存储 机器学习/深度学习 移动开发
汇编语言指令系列
汇编语言指令系列
720 0
几组汇编指令的比较
几组汇编指令的比较
|
5月前
|
存储 机器学习/深度学习 芯片
8086 汇编笔记(十二):int 指令 & 端口 & 直接定址表
8086 汇编笔记(十二):int 指令 & 端口 & 直接定址表
|
5月前
|
存储 算法 安全
深入理解汇编语言:基础语法和常用指令介绍
深入理解汇编语言:基础语法和常用指令介绍