未压缩的十进制数字3412 ASCII '3412'就是字符
AAS ---ASCII adjust after subtraction
在内存中的表示 03 04 01 02h 33 34 31 32h
对乘法和除法调整只能用于 未压缩十进制数
AAA ---ASCII adjust after addition 直接对字符数字进行+ 然后用该指令调整
mov ah,0
mov al,'8' ;ax=0038h
add al,'2' ;ax=006Ah
aaa ;ax=0100h
or ax,3030h ;ax=3130h='10'
AAS ---ASCII adjust after subtraction
.data
val1 byte '8'
val2 byte '9'
.code
mov ah,0
mov al,val1 ;ax=0038h
sub al,val2 ;ax=00ffh
aas ;ax=ff09h
pushf ;保存进位标志
or al,30h ;ax=ff39h
popf ;恢复进位标志
AAM ---ASCII adjust after multiplication
.data
val byte 05h,06h
.code
mov bl,val
mov al,val+1
mul bl ;ax=001eh
aam ;ax=0300h 将二进制转成十进制整数
AAD ---ASCII adjust before division
.data
quotient byte ?
remainder byte ?
.code
mov ax,0307h ;ax=0307h
aad ;ax=0025h 将十进制整数转成二进制
mov bl,5
div bl
mov quotient,al
mov remainder,ah