3-3 ·ÃÎÊÍⲿÊý¾Ý´æ´¢Æ÷ºÍ³ÌÐò´æ´¢Æ÷¿ÉÒÔÓÃÄÄЩָÁîÀ´ÊµÏÖ£¿¾ÙÀý˵Ã÷¡£ ´ð£º·ÃÎÊÍⲿÊý¾Ý´æ
´¢Æ÷¿ÉÒÔÓÃÒÔÏÂÖ¸ÁîʵÏÖ£º
½â:MOVX A, @Ri £»((Ri))¡úA£¬¼Ä´æÆ÷RiÖ¸ÏòµÄƬÍâRAMµØÖ·ÖеÄÄÚÈÝË͵½ÀÛ¼ÓÆ÷AÖÐ MOVX @Ri, A £»A¡ú((Ri))£¬ÀÛ¼ÓÆ÷ÖÐÄÚÈÝË͵½¼Ä´æÆ÷RiÖ¸ÏòµÄƬÍâRAMµØÖ·ÖÐ
MOVX A, @DPTR £»((DPTR))¡úA£¬Êý¾ÝÖ¸ÕëÖ¸ÏòµÄƬÍâRAMµØÖ·ÖеÄÄÚÈÝË͵½ÀÛ¼ÓÆ÷AÖÐ MOVX @DPTR, A £»A¡ú((DPTR))£¬ÀÛ¼ÓÆ÷ÖÐÄÚÈÝË͵½Êý¾ÝÖ¸ÕëÖ¸ÏòµÄƬÍâRAMµØ Ö·ÖÐ ·ÃÎʳÌÐò´æ´¢Æ÷¿ÉÒÔÓÃÒÔÏÂÖ¸ÁîʵÏÖ£º
MOVC A, @A+DPTR £»((A+DPTR))¡úA£¬±í¸ñµØÖ·µ¥ÔªÖеÄÄÚÈÝË͵½ÀÛ¼ÓÆ÷AÖÐ
MOVC A, @A+PC £»PC+1¡úPC£¬((A+PC))¡úA£¬±í¸ñµØÖ·µ¥ÔªÖеÄÄÚÈÝË͵½ÀÛ¼ÓÆ÷AÖÐ (2) ¼Ä´æÆ÷Ѱַ·½Ê½£»(3) ¼Ä´æÆ÷¼ä½ÓѰַ·½Ê½ ´ð£¨1£©Á¢¼´Ñ°Ö··½Ê½£º MOV 30H, #0FH £¨2£©¼Ä´æÆ÷Ѱַ·½Ê½£º MOV R5, #0FH
MOV 30H, R5
£¨3£©¼Ä´æÆ÷¼ä½ÓѰַ·½Ê½£ºMOV @R1, #0FH
3-4 ÊÔÓÃÏÂÁÐ3ÖÖѰַ·½Ê½±à³Ì£¬½«Á¢¼´Êý0FHËÍÈëÄÚ²¿RAMµÄ30Hµ¥ÔªÖС£ (1) Á¢¼´Ñ°Ö··½Ê½£»
3-7 д³öʵÏÖÏÂÁÐÒªÇóµÄÖ¸Áî»ò³ÌÐòƬ¶Î¡£ (1) ½«R0µÄÄÚÈÝ´«Ë͵½R1£»
(2) ÄÚ²¿RAMµÄ20Hµ¥ÔªÄÚÈÝ´«Ë͵½¼Ä´æÆ÷R1£»
(3) ÄÚ²¿RAMµÄ20Hµ¥ÔªµÄD7ºÍD3λÇåÁ㣬ÆäËüλ±£³Ö²»±ä£» (4) ÍⲿRAMµÄ1000Hµ¥ÔªÄÚÈÝ´«Ë͵½ÄÚ²¿RAMµÄ60Hµ¥ÔªÖУ» (5) ÍⲿRAMµÄ1000Hµ¥ÔªÄÚÈÝ´«Ë͵½¼Ä´æÆ÷R2£» (6) Çå³ýÀÛ¼ÓÆ÷¸ß4λ¡£ ´ð£º£¨1£©MOV A, R0
MOV R1, A £¨2£©MOV R1, 20H £¨3£©MOV A, 20H
ANL A, #77H
£¨4£©MOV DPTR, #1000H
MOVX A, @DPTR MOV 60H, A
£¨5£©MOV DPTR, #1000H
MOVX A, @DPTR MOV R2, A £¨6£©ANL A, #0FH
3-8 ÊÔ±àдһ¶Î³ÌÐò£¬½«ÄÚ²¿Êý¾Ý´æ´¢Æ÷30H¡¢3lHµ¥ÔªÄÚÈÝ´«Ë͵½ÍⲿÊý¾Ý´æ´¢Æ÷1000H¡¢1001H
µ¥ÔªÖС£ ´ð£º MOV A, 30H
MOV DPTR, #1000H MOV @DPTR, A MOV A, 31H
MOV DPTR, #1000H MOV @DPTR, A
3-9 ÊÔ±àдһ¶Î³ÌÐò£¬½«ÍⲿÊý¾Ý´æ´¢Æ÷40Hµ¥ÔªÖеÄÄÚÈÝ´«Ë͵½0l00Hµ¥ÔªÖС£
´ð£º MOV DPTR, #0040H
MOV A, @DPTR MOV 0100H, A
3-10 ÊÔ±àд¡ª¶Î³ÌÐò£¬½«R3ÖеÄÊý³Ë4£¨ÓÃÒÆÎ»Ö¸Á¡£
´ð£º MOV A, R3
MOV 23H, #02H L0: DJNZ 23H, L1 L1: RL A
SJMP L0
3-11 ÊÔ±àд¡ª¶Î³ÌÐò£¬½«R2Öеĸ÷λµ¹ÐòÅÅÁкóËÍÈëR3ÖС£
´ð£º MOV A, R2
MOV 23H, #08H L0: DJNZ 23H, L1 L1: RL A SJMP L0 MOV R3, A
3-12 ÊÔ±àд¡ª¶Î³ÌÐò£¬½«P1¿ÚµÄ¸ß5λÖÃ룬µÍ3λ²»±ä¡£
´ð£º MOV A, P1 ORL A, #F8H MOV P1, A
4-4 ±àд³ÌÐò£¬½«Æ¬ÄÚ30H~39Hµ¥ÔªÖеÄÄÚÈÝË͵½ÒÔ2000HΪÊ×µÄÍⲿ´æ´¢Æ÷¡£ ´ð£º ORG 0000H
START: MOV R0, #30H
MOV DPTR, #2000H MOV R1, #10 CLR A
LOOP: MOV A, @R0
MOVX @DPTR, A DEC R1
DJNZ R1, LOOP END
4-5 ±àд³ÌÐò£¬²ÉÓÃËãÊõƽ¾ùÖµÂ˲¨·¨Çó²ÉÑùƽ¾ùÖµ£¬Éè8´Î²ÉÑùÖµÒÀ´Î·ÅÔÚ20H~27HµÄÁ¬Ðøµ¥ÔªÖУ¬½á¹û±£ÁôÔÚAÖС£ ´ð£ºFILT: CLR A
MOV R2, A MOV R3, A MOV R0, #20H MOV R7, #08H ;³õʼ»¯
FILT1: MOV A, @R0
ADD A, R3 MOV R3, A CLR A
ADDC A, R2 MOV R2, A INC R0
DJNZ R7, FILT1
;ÀÛ¼Ó²ÉÑùÖµµ½R3£¬ÀÛ¼Ó½øÎ»µ½R2=00000xxxB FILT2: SWAP A
RL A ;R2/8£¬½Úʡһ¸öÖ¸ÁîÖÜÆÚ XCH A, R3 SWAP A
RL A ;R3/8£¬½Úʡһ¸öÖ¸ÁîÖÜÆÚ ADD A, #80H ;ËÄÉáÎåÈë
ANL A, #1FH ;ÆÁ±ÎÒÆÎ»½øÈëµÄǰÈýλ ADDC A, R3 ;½á¹ûÏà¼Ó END
;ȡƽ¾ùÖµ
4-6 ±àд³ÌÐò£¬½«´æ·ÅÔÚÄÚ²¿RAMÆðʼµØÖ·Îª20HºÍ30HµÄÁ½¸ö3×Ö½ÚÎÞ·ûºÅÏà¼õ£¬½á¹û´æ·ÅÔÚÄÚ²¿RAMµ¥Ôª70H¡¢71H¡¢72HÖУ¨µÍλ¶ÔÓ¦µÍ×Ö½Ú£©¡£ ´ð£º ORG 0000H
START: MOV R0, #20H
MOV R1, #30H MOV R2, #03H CLR C S0: LCALL XU
MOV 70H, A LCALL XU MOV 70H, A LCALL XU MOV 70H, A S1: MOV A, @R0
SUBB A, @R1 INC R0 INC R1 RET END
4-7 ±àд³ÌÐò£¬ÊµÏÖÁ½¸öË«×Ö½ÚÎÞ·ûºÅÊýµÄ³Ë·¨ÔËË㣬³ËÊý´æ·ÅÔÚR2ºÍR3ÖУ¨R2´æ·Å¸ß×Ö½Ú£¬R3´æ·ÅµÍ×Ö½Ú£¬ÒÔÏÂÀàͬ£©£¬±»³ËÊý´æ·ÅÔÚR6ºÍR7ÖУ¬»ý´æ·ÅÔÚR4¡¢R5¡¢R6ºÍR7ÖС£ ´ð£º ORG 0000H DMUL: MOV A, R3
MOV B, R7 MUL AB MOV R0, A MOV R1, B ;µÍ8λ*µÍ8λ
MOV A, R2 MOV B, R7 MUL AB ADD A, R1 MOV R1, A MOV A, B
ADDC A, #00H MOV R5, A ;¸ß8λ*µÍ8λ
MOV A, R3 MOV B, R6 MUL AB ADD A, R1 MOV R1, A MOV A, R5 ADDC A, B MOV R5, A MOV A, #00H ADDC A, #00H MOV R4, A ;µÍ8λ*¸ß8λ
MOV A, R3 MOV B, R6 MUL AB ADD A, R5 MOV R5, A MOV A, R4 ADDC A, B MOV R4, A ;¸ß8λ*¸ß8λ
MOV A, R0 MOV R7, A MOV A, R1 MOV R6, A ;R0¡¢R1¸øR7¡¢R6
END
4-8 ¼ÙÉèÔÚR0Ö¸ÏòµÄƬÄÚRAMÇø£¬´æÓÐ20¸ö16½øÖÆÊýµÄASCII×Ö´®¡£½«ASCIIÂëת»»Îª16½øÖÆÊý£¬È»ºóÁ½Á½ºÏ³ÉÒ»¸ö×Ö½Ú£¬´ÓµÍµØÖ·µ¥Ôªµ½¸ßµØÖ·µ¥ÔªÒÀ´Î×éºÏ¡£ ´ð£º ORG 0000H
START: MOV R7, #20 S0: MOV A, R0
MOV R1, A ;R1ΪÖмäÁ¿ MOV A, @R0 CLR C
SUBB A, #30H MOV @R1, A JC S01
MOV A, @R0 SUBB A, #07H MOV @R1, A S01: INC R0
MOV A, @R0 CLR C
SUBB A, #30H SWAP A ORL A, @R1 MOV @R1, A JC S02
MOV A, @R0 SUBB A, #07H SWAP A OR A, @R1 MOV @R1, A S02: INC R0
DJNZ R7, S0 END
4-9 ½áºÏÀý4-24ºÍͼ4-5±àдÏßÐÔ±ê¶È±ä»»³ÌÐò¡£
´ð£º ½«256½üËÆ255£¬256±È255×ö¸¡µãÔËËã¼òµ¥ºÜ¶à
PUSH ACC PUSH PSW MOV A, #Am MOV 20H, #A0 CLR C
SUBB A, 20H ;½«256½üËÆ255£¬ÔòAΪСÊýµãºóµÄλ MOV 21H, #Nx MOV B, 21H
MUL AB ;BΪÕûÊý룬AΪСÊýµãºóµÄλ ADD A, #80H ;ËÄÉáÎåÈë MOV A, B ADDC A, #A0 MOV 38H, A POP PSW PUSH ACC RET
5-4 ÊÔ±àдһ¶Î³ÌÐò£¬½«ÄÚ²¿Êý¾Ý´æ´¢Æ÷30H¡¢3lHµ¥ÔªÄÚÈÝ´«Ë͵½ÍⲿÊý¾Ý´æ´¢Æ÷1000H¡¢1001H