ADD指令將源操作數和累加器A中的數相加,加法的結果存入累加器A,并且運算結果會影響PSW中的CY、OV、AC和P標志位。ADD指令對標志位的影響如下:當加法結果的第7位有進位時,則進位標志位CY被置1,否則被清0;如果加法結果的第3位有進位,則輔助進位標志位AC被置1,否則被清0;如果加法結果的第6位和第7位的進位情況不一致,則溢出標志位OV被置1,否則被清0;運算結束時,奇偶標志位P的值由累加器A中的數決定,若累加器A中的值以二進制表示后,其中“1”的個數為奇數個,則P為1,否則P為0。
算術運算指令共有24條,算術運算主要是執(zhí)行加、減、乘、除法四則運算。另外MCS-51指令系統(tǒng)中有相當一部分是進行加、減1操作,BCD碼的運算和調整,我們都歸類為運算指令。雖然MCS-51單片機的算術邏輯單元ALU僅能對8位
ADD A,#DATA ;例:ADD A,#10HADD A,direct ;例:ADD A,10HADD A,Rn ;例:ADD A,R7ADD A,@Ri ;例:ADD A,@R0用途:將A中的值與其后面的值相加,最終結果否是回到A中。例:MOV A,#30HADD A,#10H則執(zhí)行完本條指令
ADDC A,RnADDC A,directADDC A,@RiADDC A,#data用途:將A中的值和其后面的值相加,并且加上進位位C中的值。說明:由于51單片機是一種8位機,所以只能做8位的數學運算,但8位運算的范圍只有0-255,這在實際工作中是不