试题详情
简答题在以3000H为首地址的外部RAM中,存放了14个以ASCII码表示的0~9的数,试编写程序将它们转换成BCD码,并以压缩BCD形式存放在以2000H为首地址的外部RAM中。
  • 1  ORG 00H
    0000  903000 2  MOV DPTR,#3000H ; 原始数据首地址
    0003  7807      3  MOV R0,#07 ;   循环次数
    0005  7930      4  MOV R1,#30H ;  转换结果暂存区指针
    0007  E0        5 CH1: MOVX A,@DPTR
    0008  550F      6  ANL A, #00001111B
    000A  C4        7  SWAP A
    000B  F5F0      8  MOV B,A
    000D  A3        9  INC DPTR
    000E  E0        10  MOVX A,@DPTR
    000F  550F      11  ANL A, #00001111B
    0011  45F0      12  ORL A,B
    0013  F7        13  MOV @R1,A
    0014  09        14  INC R1
    0015  A3        15  INC DPTR
    0016  D8EF      16  DJNZ R0,CH1
    0018  902000    17  MOV DPTR,#2000H ;  转换结果存储区
    001B  7A07      18  MOV R2,#07H ;  结果个数
    001D  7930      19  MOV R1,#30H
    001F  E7        20 CH2: MOV A,@R1 ;
  • 关注下方微信公众号,在线模考后查看

热门试题