第三章单片机的汇编语言与程序设计习题1
设内部RAM中59H单元的内容为50H,写出当执行下列程序段后寄存器A,R0和内部RAM中50H,51H单元的内容为何值
MOVA,59HMOVR0,AMOVA,#00HMOV@R0,AMOVA,#25HMOV51H,AMOV52H,#70H解:MOVA,59H;A=50HMOVR0,A;RO=50HMOVA,#00H;A=00HMOV@R0,A;50H=00HMOVA,#25H;A=25HMOV51H,A;51H=25HMOV52H,#70H;52H=70H所以:A=25HR0=50H;50H=00H51H=25H2
请选用合适的指令对P0口内容做修改(例如使P0
3不变,P0
解:MOVA,P0ANLA,0fhMovP0,A3
试问外部数据存储器和程序存储器可以用哪些指令来实现
解:访问外部数据存储器指令有:MOVX@DPTR,AMOVXDPTR,#0100HMOV@DPTR,AMOVXA,@DPTRMOVXDPTR,#0200HMOVA,@DPTRMOVXA,@RiMOVXA,@R0MOVX@Ri,AMOVX@RI,A访问程序存储器指令有:MOVXA,@A+PCMOVXA,@A+DPTR4
设堆栈指针SP中的内容为60H,内部RAM中30H和31H单元的内容分别为24H和10H,执行下列程序段后,61H,62H,30H,31H,DPTR及SP中的内容将有何变化
PUSH30HPUSH31HPOPDPLPOPDPHMOV30H,#00HMOV31H,#0FFH解:PUSH30H;61H=24HPUSH31H;62=10HSP=62HPOPDPL;DPL=10HPOPDPH;DPH=24HSP=60HMOV30H,#00H;30H=00HMOV31H,#0FFH;31H=0FFH5