民國108年 第3梯次 儀表電子甲級 學科

第46題

組合語言中,DA A 為BCD 碼調整的指令。在加法指令執行後,ACC= 0A1H、CY=0、AC=1,則 此時執行DA A 指令後,ACC 的值為何?

題目

組合語言中,DA A 為BCD 碼調整的指令。在加法指令執行後,ACC= 0A1H、CY=0、AC=1,則 此時執行DA A 指令後,ACC 的值為何?

  1. (1) 07H
  2. (2) 27H
  3. (3) 17H
  4. (4) 37H

官方答案

(1) 07H

解析

8051 的 DA A 指令規則是:若 ACC 低四位元大於 9 或 AC=1,則 ACC 加 06H;若高四位元大於 9 或 CY=1,則再加 60H。本題 ACC=A1H,低四位元為 1,但 AC=1,故先加 06H 得 A7H,此時低四位元變為 7。接著高四位元為 A(即 10),大於 9,須再加 60H,A7H+60H=107H,取低 8 位元得 07H,並使 CY=1。故調整後 ACC=07H。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料