📄 aas.htm
字号:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"><HTML><HEAD><TITLE>80386 Programmer's Reference Manual -- Opcode AAS</TITLE></HEAD><BODY><B>up:</B> <A HREF="c17.htm">Chapter 17 -- 80386 Instruction Set</A><BR><B>prev:</B><A HREF="AAM.htm"> AAM ASCII Adjust AX after Multiply</A><BR><B>next:</B><A HREF="ADC.htm"> ADC Add with Carry</A><P><HR><P><H1>AAS -- ASCII Adjust AL after Subtraction</H1><PRE>Opcode Instruction Clocks Description3F AAS 4 ASCII adjust AL after subtraction</PRE><H2>Operation</H2><PRE>IF (AL AND 0FH) > 9 OR AF = 1THEN AL := AL - 6; AL := AL AND 0FH; AH := AH - 1; AF := 1; CF := 1;ELSE CF := 0; AF := 0;FI;</PRE><H2>Description</H2>Execute AAS only after a <A HREF="SUB.htm">SUB</A> instruction that leaves the byte result in theAL register. The lower nibbles of the operands of the <A HREF="SUB.htm">SUB</A> instruction musthave been in the range 0 through 9 (BCD digits). In this case, AAS adjustsAL so it contains the correct decimal digit result. If the subtractionproduced a decimal carry, the AH register is decremented, and the carry andauxiliary carry flags are set to 1. If no decimal carry occurred, the carryand auxiliary carry flags are set to 0, and AH is unchanged. In either case,AL is left with its top nibble set to 0. To convert AL to an ASCII result,follow the AAS with <A HREF="OR.htm">OR</A> AL, 30H.<H2>Flags Affected</H2>AF and CF as described above; OF, SF, ZF, and PF are undefined<H2>Protected Mode Exceptions</H2>None<H2>Real Address Mode Exceptions</H2>None<H2>Virtual 8086 Mode Exceptions</H2>None<P><HR><P><B>up:</B> <A HREF="c17.htm">Chapter 17 -- 80386 Instruction Set</A><BR><B>prev:</B><A HREF="AAM.htm"> AAM ASCII Adjust AX after Multiply</A><BR><B>next:</B><A HREF="ADC.htm"> ADC Add with Carry</A></BODY>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -