加的時候,如果上面留有進位標記,就要多加1。
這是多字運算中很常見的指令。
例如,如果要計算兩個雙字長整數的和,可以執行以下操作:
(1)首先用普通加法指令將加數和被加數的低位字相加,機器和作為和的低位字,如果有進位,也會產生進位標誌。
(2)將加數的高位字和帶ADDC指令的加數相加,得到機器和,作為和的高位字。
在這個過程中,如果在(1)步產生了進位,自然會在第二步加上。
註意,當執行ADDC時,如果有進位,就會產生壹個進位標誌。因此,該方法可以擴展到計算三倍字長、四倍字長,...諸如此類。
還有壹個靈活的應用:可以用來實現“帶進位標誌的循環左移”,即:
用ADDC指令將自己“加”到累加器(或具有累加器功能的寄存器)中,效果是寄存器的內容左移壹位,左上的進位標誌移到寄存器的最低位,寄存器原來的最高位移入進位標誌。