结构推理 已知256≤显示数<10000,存在R7、R6中,试将其转换为4位共阳顺序小数点暗字段码,存在以33H(高位)~30H的内RAM中。
【正确答案】编程如下:
   SPRT:MOV   A,R7         ;置被除数
       MOV    B,R6         ;
       MOV    R6,#03H      ;置除数1000=03ESH
       MOV    R5,#0E8H     ;
       MOV    R0,#33H      ;置千位商码间址
       LCALL  SUM          ;除以1000,千位商存33H,余数存A、B
       MOV    R6,#0        ;置除数100
       NOV    R5,#100      ;
       DEC    R0           ;指向百位商间址(32H)
       LCALL  SUM          ;除以100,百位商存32H,余数存A
       MOV    B,#10        ;置除数10
       DIV    AB           ;除以10
       DEC    R0           ;指向十位商间址(31H)
       MOV    @R0,A        ;十位商存31H
       XCH    A,B          ;读个位数
       DEC    R0           ;指向个位间址(30H)
       MOV    @R0,A        ;个位存30H
   CHAG:MOV   DPTR,#TAB    ;置共阳字段码表首址
   CGLP:MOV   A,@R0        ;取显示数字
       MOVC   A,@A+DPTR    ;读相应显示字段码
       MOV    @R0,A        ;存显示字段码
       INC    R0           ;指向下一显示数字
       CJNE   R0,#34H,CGLP ;判4个显示数字转换完否?未完继续
       RET                 ;转换完毕,结束
   TAB:DB 40H,79H,24H,30H,19H,12H,02H,78H,00H,10H;共阳字段码表
【答案解析】