slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
§ 3.4 算术运算 类指令 PowerPoint Presentation
Download Presentation
§ 3.4 算术运算 类指令

Loading in 2 Seconds...

play fullscreen
1 / 22

§ 3.4 算术运算 类指令 - PowerPoint PPT Presentation


  • 122 Views
  • Uploaded on

§ 3.4 算术运算 类指令. 一、 加法指令. 1. 不带 CY 加法指令 (4条). ; A  ( A)+(Rn). ADD. A,Rn. ;A  ( A)+(direct). ADD. A,direct. ADD. A,@Ri. ;A  ( A)+((Ri)). ADD. A,#data. ; A  ( A)+ data. 功能:将源操作数所找到的数与累加器 A 中的值相加 ,    其结果存放在累加器 A 中。. 加法运算对标志位的影响:. ( 1 ) CY------- 在加法运算中,如果 D7 位向上有进位, 则 CY=1,

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '§ 3.4 算术运算 类指令' - trina


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1
§ 3.4 算术运算类指令

一、 加法指令

1.不带CY加法指令(4条)

;A(A)+(Rn)

ADD

A,Rn

;A(A)+(direct)

ADD

A,direct

ADD

A,@Ri

;A(A)+((Ri))

ADD

A,#data

;A(A)+ data

功能:将源操作数所找到的数与累加器A中的值相加,   其结果存放在累加器A中。

slide2

加法运算对标志位的影响:

(1)CY-------在加法运算中,如果D7位向上有进位,则CY=1,

否则CY=0。

(2)AC-----在加法运算中,如果D3位向上有进位,则AC=1,

否则 AC=0。

(3)OV-----在加法运算中,如果D7或D6只有一个向上有进位,

则OV=1,否则 OV=0。

(4)P ——奇偶标志;A中1的个数为奇数P = 1;P = 0。

slide3

【例】(A)=85H,(R0)=20H,(20H)=0AFH,执行指令:【例】(A)=85H,(R0)=20H,(20H)=0AFH,执行指令:

ADD A,@R0

1 0 0 0 0 1 0 1

+ 1 0 1 0 1 1 1 1

1 0 0 1 1 0 1 0 0

结果:(A)=34H;CY=1;AC=1;OV=1。

   对于加法,在进行带符号数的加法运算时,溢出标志OV=1,则表示计算结果出错。

slide4

2.带CY加法指令(4条)

A,Rn

;A(A)+(Rn)+(Cy)

ADDC

A,direct

ADDC

;A(A)+(direct)+(Cy)

ADDC

A,@Ri

;A(A)+((Ri))+(Cy)

ADDC

A,#data

;A(A)+ data+(Cy)

功能:将源操作数所找到的数与累加器A中的值及进位   标志位相加,其结果存放在累加器A中。

slide5

说明:

此处的CY是该指令执行前已经存在的进位标志位值

对标志位的影响同ADD

主要应用在多字节的加法中

slide6

【例】(A)=85H,(20H)=0FFH,CY=1执行指令:

ADDC A,20H

10000101

11111111

1 10000100

结果:(A)=84H;CY=1;AC=1;OV=0。

slide7

【例】书上P45页3-10

设有两个无符号16位二进制数,分别放在30H、31H单元和

40H和41H单元中(低八位先存),写出两个16位数的加法程序,将和存入50H、51H单元中(设和不超过16位)。

解: MOV A,30H

ADD A,40H

MOV 50H,A

MOV A,31H

MOV A,41H

MOV 51H,A

slide8

3.增量指令(加1指令)

INC A ;A(A)+1

INC Rn ;Rn (Rn)+1

INC direct ;direct (direct)+1

INC @Ri ;(Ri)((Ri))+1

INC DPTR ;DPTR (DPTR)+1

功能:将操作数所指定的单元的内容加一。

加1指令涉及 A时,会影响P,但不影响其他标志位。

slide9

【例】(A)=12H,(R3)=0FH,(35H)=4AH,

(R0)=56H,(56H)=00H

执行如下指令:

INCA   ;执行后(A)=13H

INCR3;执行后(R3)=10H

INC35H  ;执行后(35H)=4BH

INC  @R0;执行后(56H)=01H

slide10

4.十进制调整指令

DA A

应用:执行该指令时,只要将该指令放在加法指令后,其就会自动调整。  

具体:

判断A中的低4位是否大于9或CY=1,若满足大于则低4位做加6操作;

同样,A中的高4位大于9,或CY=1,则高4位加6操作。

slide11

例如:有两个BCD数36与45相加,结果应为BCD码81,程序如下:例如:有两个BCD数36与45相加,结果应为BCD码81,程序如下:

MOV A,#36H

ADD A,#45H ;得结果7BH  

DA A  ; 81H

  第三条指令对累加器A进行十进制调整,低4位(为0BH)大于9,因此要加6,最后得到调整的BCD码81。

slide12

注意:

该指令只能用在加法指令后

   减法没有专用的十进制调整指令,可用加    (减数的补数)该指令

例:求80-20的BCD码运算

1.减数的补数:100-20

2.可以用:80+(100-20)=160 3.去掉进位标志来代替

slide13
二、 减法指令(4条)

1.带进位减法指令

SUBB A,Rn ;A(A)-(Rn)-(CY)

SUBB A,direct ;A(A)-(direct)-(CY)

SUBB A,@Ri ;A(A)-((Ri))-(CY)

SUBB A,#data ;A(A)-data-(CY)

功能:将累加器A中的值减去源操作数和进位位CY,其结果存放在累加器A中。

slide14

注意:

CY为该指令执行之前已经存在的标志位;

减法指令只有带进位的减法,不带进位的减法可令CY=0。

slide15

加法运算对标志位的影响:

CY-------在减法运算中,如果D7位向上须借位,则CY=1,

否则CY=0。

AC-----在减法运算中,如果D3位向上须借位,则AC=1,

否则 AC=0 。

OV-----在减法运算中,如果D7或D6只有一个向上须借则OV=1,否则D7和D6同时无借位 OV=0

P ——奇偶标志;A中1的个数为奇数 P = 1;

否则 P = 0。

slide16

2.减1指令

DEC A ;A(A)-1

DEC Rn ;Rn(Rn)-1

DEC direct ;direct(direct)-1

DEC @Ri ;(Ri)((Ri))-1

功能:将操作数所指定的单元的内容减一。

减1指令涉及 A时,会影响P,但不影响其他标志位。

slide17

三.乘法指令

乘法指令完成单字节的乘法,只有一条指令:

MUL AB; A×B→BA

功能:将累加器A和寄存器B中两个8位的无符号数相乘,所得的16位的积低8位放在A中,高8位放在B中。

slide18

乘法指令影响3个标志位:

(1)若乘积小于FFH(B的内容为零),则0V=0,否则OV=1

(2)CY总为零

(3)奇偶标志位P仍按类加器A中1的奇偶性来确定

slide19

【例】(A)=50H,(B)=31H,执行指令:

MUL AB

结果:(B)=0FH,(A)=50H(即乘积为3200H) (CY)=0, (OV)=1。

slide20

四、除法指令

除法指令完成单字节的除法,只有一条指令:

DIV AB ;功能:(A÷B) 商→A,

                余数→B

这条指令的功能是:

对两个8位无符号数进行除法运算,其中被除数放在累加器A中,除数放在B中。执行指令后,商放在累加器A中,余数放在B中。

slide21

除法指令影响3个标志位:

(1)若除数为零(B=0)时,OV=1,表示除法没有意义;若除数不为零,则OV=0

(2)CY总为零

(3)奇偶标志位P仍按类加器A中1的奇偶性来确定

slide22

算术运算类指令包括:ADD、ADDC、SUBB、MUL、DIV、算术运算类指令包括:ADD、ADDC、SUBB、MUL、DIV、

INC、DEC和DA,如图3.9所示。