?? 口字移動.lst
字號:
A51 MACRO ASSEMBLER 口字移__ 07/10/2008 22:21:25 PAGE 1
MACRO ASSEMBLER A51 V8.00d
OBJECT MODULE PLACED IN 口字移動.OBJ
ASSEMBLER INVOKED BY: E:\Program Files\keil\C51\BIN\A51.EXE 口字移動.asm SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2
3 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0090 4 key1 equ p1.0
0091 5 key2 equ p1.1
0092 6 key3 equ p1.2
0093 7 key4 equ p1.3
0094 8 key5 equ p1.4
0095 9 key6 equ p1.5
0096 10 key7 equ p1.6
0097 11 key8 equ p1.7
12 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0000 13 org 0000h
0000 802E 14 sjmp main
0030 15 org 0030h
16 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0030 17 main:
0030 7580FF 18 mov p0,#0ffh
0033 7590FF 19 mov p1,#0ffh
0036 75A0FF 20 mov p2,#0ffh
0039 75B0FF 21 mov p3,#0ffh
22
003C 74A3 23 mov a,#0a3h
003E C2A7 24 clr p2.7
25
0040 26 key_up:
0040 209206 27 jb key3,key_down
0043 1185 28 call delay
0045 1169 29 call mov_up
0047 801B 30 jmp key_exit
0049 31 key_down:
0049 209306 32 jb key4,key_left
004C 1185 33 call delay
004E 1174 34 call mov_down
0050 8012 35 jmp key_exit
0052 36 key_left:
0052 209106 37 jb key2,key_right
0055 1185 38 call delay
0057 117F 39 call mov_left
0059 8009 40 jmp key_exit
005B 41 key_right:
005B 209506 42 jb key6,key_exit
005E 1185 43 call delay
0060 1182 44 call mov_right
0062 8000 45 jmp key_exit
0064 46 key_exit:
0064 1192 47 call num_display
0066 80D8 48 jmp key_up
49
0068 22 50 ret
51 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0069 52 mov_up:
0069 64A3 53 xrl a,#0a3h
006B 7004 54 jnz mov_up_nomove
006D 749C 55 mov a,#09ch
006F 8002 56 jmp mov_up_exit
0071 57 mov_up_nomove:
0071 749C 58 mov a,#9ch
A51 MACRO ASSEMBLER 口字移__ 07/10/2008 22:21:25 PAGE 2
0073 59 mov_up_exit:
0073 22 60 ret
61 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0074 62 mov_down:
0074 649C 63 xrl a,#09ch
0076 7004 64 jnz mov_down_nomove
0078 74A3 65 mov a,#0a3h
007A 8002 66 jmp mov_down_exit
007C 67 mov_down_nomove:
007C 74A3 68 mov a,#0a3h
007E 69 mov_down_exit:
007E 22 70 ret
71 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
007F 72 mov_left:
007F 11A4 73 call changleft
74
0081 75 mov_left_exit:
0081 22 76 ret
77 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0082 78 mov_right:
0082 11C5 79 call changeright
0084 22 80 ret
81 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0085 82 delay:
0085 7FC8 83 mov r7,#200
0087 84 delay_loop:
0087 7EC8 85 mov r6,#200
0089 DEFE 86 djnz r6,$
008B 7EC8 87 mov r6,#200
008D DEFE 88 djnz r6,$
008F DFF6 89 djnz r7,delay_loop
0091 22 90 ret
91 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0092 92 num_display:
0092 F580 93 mov p0,a
0094 1197 94 call DELAY_DISP
0096 22 95 ret
96 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0097 97 DELAY_DISP:
0097 7F0A 98 mov R7,#10
0099 99 DELAY_DISP_LOOP:
0099 7EC8 100 mov R6,#200
009B DEFE 101 djnz R6,$
009D 7EC8 102 mov R6,#200
009F DEFE 103 djnz R6,$
104
00A1 DFF6 105 djnz R7,DELAY_DISP_LOOP
106
00A3 22 107 ret
108 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
00A4 109 changleft:
00A4 30A709 110 jnb p2.7,light_left1
00A7 30A608 111 jnb p2.6,light_left2
00AA 30A50B 112 jnb p2.5,light_left3
00AD 30A40E 113 jnb p2.4,light_left4
00B0 114 light_left1:
115
00B0 8012 116 jmp changleft_exit
00B2 117 light_left2:
00B2 D2A6 118 setb p2.6
00B4 C2A7 119 clr p2.7
00B6 800C 120 jmp changleft_exit
00B8 121 light_left3:
00B8 D2A5 122 setb p2.5
00BA C2A6 123 clr p2.6
00BC 8006 124 jmp changleft_exit
A51 MACRO ASSEMBLER 口字移__ 07/10/2008 22:21:25 PAGE 3
00BE 125 light_left4:
00BE D2A4 126 setb p2.4
00C0 C2A5 127 clr p2.5
00C2 8000 128 jmp changleft_exit
00C4 129 changleft_exit:
00C4 22 130 ret
131 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
00C5 132 changeright:
00C5 30A709 133 jnb p2.7,light_right1
00C8 30A60C 134 jnb p2.6,light_right2
00CB 30A50F 135 jnb p2.5,light_right3
00CE 30A412 136 jnb p2.4,light_right4
00D1 137 light_right1:
00D1 C2A6 138 clr p2.6
00D3 D2A7 139 setb p2.7
00D5 800E 140 jmp changright_exit
00D7 141 light_right2:
00D7 D2A6 142 setb p2.6
00D9 C2A5 143 clr p2.5
00DB 8008 144 jmp changright_exit
00DD 145 light_right3:
00DD D2A5 146 setb p2.5
00DF C2A4 147 clr p2.4
00E1 8002 148 jmp changright_exit
00E3 149 light_right4:
00E3 8000 150 jmp changright_exit
00E5 151 changright_exit:
00E5 22 152 ret
153 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
154 end
A51 MACRO ASSEMBLER 口字移__ 07/10/2008 22:21:25 PAGE 4
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
CHANGERIGHT. . . . C ADDR 00C5H A
CHANGLEFT. . . . . C ADDR 00A4H A
CHANGLEFT_EXIT . . C ADDR 00C4H A
CHANGRIGHT_EXIT. . C ADDR 00E5H A
DELAY. . . . . . . C ADDR 0085H A
DELAY_DISP . . . . C ADDR 0097H A
DELAY_DISP_LOOP. . C ADDR 0099H A
DELAY_LOOP . . . . C ADDR 0087H A
KEY1 . . . . . . . B ADDR 0090H.0 A
KEY2 . . . . . . . B ADDR 0090H.1 A
KEY3 . . . . . . . B ADDR 0090H.2 A
KEY4 . . . . . . . B ADDR 0090H.3 A
KEY5 . . . . . . . B ADDR 0090H.4 A
KEY6 . . . . . . . B ADDR 0090H.5 A
KEY7 . . . . . . . B ADDR 0090H.6 A
KEY8 . . . . . . . B ADDR 0090H.7 A
KEY_DOWN . . . . . C ADDR 0049H A
KEY_EXIT . . . . . C ADDR 0064H A
KEY_LEFT . . . . . C ADDR 0052H A
KEY_RIGHT. . . . . C ADDR 005BH A
KEY_UP . . . . . . C ADDR 0040H A
LIGHT_LEFT1. . . . C ADDR 00B0H A
LIGHT_LEFT2. . . . C ADDR 00B2H A
LIGHT_LEFT3. . . . C ADDR 00B8H A
LIGHT_LEFT4. . . . C ADDR 00BEH A
LIGHT_RIGHT1 . . . C ADDR 00D1H A
LIGHT_RIGHT2 . . . C ADDR 00D7H A
LIGHT_RIGHT3 . . . C ADDR 00DDH A
LIGHT_RIGHT4 . . . C ADDR 00E3H A
MAIN . . . . . . . C ADDR 0030H A
MOV_DOWN . . . . . C ADDR 0074H A
MOV_DOWN_EXIT. . . C ADDR 007EH A
MOV_DOWN_NOMOVE. . C ADDR 007CH A
MOV_LEFT . . . . . C ADDR 007FH A
MOV_LEFT_EXIT. . . C ADDR 0081H A
MOV_RIGHT. . . . . C ADDR 0082H A
MOV_UP . . . . . . C ADDR 0069H A
MOV_UP_EXIT. . . . C ADDR 0073H A
MOV_UP_NOMOVE. . . C ADDR 0071H A
NUM_DISPLAY. . . . C ADDR 0092H A
P0 . . . . . . . . D ADDR 0080H A
P1 . . . . . . . . D ADDR 0090H A
P2 . . . . . . . . D ADDR 00A0H A
P3 . . . . . . . . D ADDR 00B0H A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -