|
ASEM-51v1.2(Freeware)組合語言編譯過程
|
|
作者 : 自動化技術網
|
| ASEM-51v1.2(Freeware)組合語言編譯過程 自動化技術網 |
|
|
| 範例: 欲編譯之組合語言原始程式 RELAYOUT.A51 |
| <1>. 編譯程序=>C:\Asem51\ASEM RELAYOUT.A51 |
;原始程式 RELAYOUT.A51
WATCHDOG BIT P2.7 ; Watch-Dog 觸發
RELAY1 BIT P3.4 ; P3.4 繼電器 1
RELAY2 BIT P3.5 ; P3.5 繼電器 2
RELAY3 BIT P3.6 ; P3.7 繼電器 3
RELAY4 BIT P3.7 ; P3.7 繼電器 4
;============================================================================
ORG 0H
JMP AGAIN
ORG 0BH ;TIMER0 中斷向量
;============================================================================
AGAIN:
CPL WATCHDOG
SETB RELAY1 ;繼電器 1 OFF
SETB RELAY2 ;繼電器 2 OFF
SETB RELAY3 ;繼電器 3 OFF
SETB RELAY4 ;繼電器 4 OFF
RUN:
CPL WATCHDOG
SETB RELAY4 ;繼電器 4 OFF
CLR RELAY1 ;繼電器 1 ON
SETB RELAY2 ;繼電器 2 OFF
SETB RELAY3 ;繼電器 3 OFF
CALL DELAY
SETB RELAY1 ;繼電器 1 OFF
CLR RELAY2 ;繼電器 2 ON
SETB RELAY3 ;繼電器 3 OFF
SETB RELAY4 ;繼電器 4 OFF
CALL DELAY
SETB RELAY2 ;繼電器 2 OFF
SETB RELAY1 ;繼電器 1 OFF
CLR RELAY3 ;繼電器 3 ON
SETB RELAY4 ;繼電器 4 OFF
CALL DELAY
SETB RELAY3 ;繼電器 3 OFF
SETB RELAY1 ;繼電器 1 OFF
SETB RELAY2 ;繼電器 2 OFF
CLR RELAY4 ;繼電器 4 ON
CALL DELAY
JMP RUN
;============================================================================
;軟體延遲計時副程式
DELAY:
MOV R3,#0FFH
DELA:
MOV R4,#0FFH
DELB:
CPL WATCHDOG
DJNZ R4,DELB
DJNZ R3,DELA
RET
END
|
編譯結果:(a)(b)
(a)產生RELAYOUT.LST
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 1
MCS-51 Family Cross Assembler A S E M - 5 1 V 1.2
=====================================================
Source File: RELAYOUT.A51
Object File: RELAYOUT.HEX
List File: RELAYOUT.LST
Line I Addr Code Source
1:
2:
3: B A7 WATCHDOG BIT P2.7 ; Watch-Dog 觸發
4:
5: B B4 RELAY1 BIT P3.4 ; P3.4 繼電器 1
6: B B5 RELAY2 BIT P3.5 ; P3.5 繼電器 2
7: B B6 RELAY3 BIT P3.6 ; P3.7 繼電器 3
8: B B7 RELAY4 BIT P3.7 ; P3.7 繼電器 4
9:=====================================================================
10: N 0000 ORG 0H
11: 0000 02 00 0B JMP AGAIN
12: N 000B ORG 0BH ;TIMER0 中斷向量
13:=====================================================================
14: 000B AGAIN:
15: 000B B2 A7 CPL WATCHDOG
16: 000D D2 B4 SETB RELAY1 ;繼電器 1 OFF
17: 000F D2 B5 SETB RELAY2 ;繼電器 2 OFF
18: 0011 D2 B6 SETB RELAY3 ;繼電器 3 OFF
19: 0013 D2 B7 SETB RELAY4 ;繼電器 4 OFF
20:
21: 0015 RUN:
22: 0015 B2 A7 CPL WATCHDOG
23: 0017 D2 B7 SETB RELAY4 ;繼電器 4 OFF
24: 0019 C2 B4 CLR RELAY1 ;繼電器 1 ON
25: 001B D2 B5 SETB RELAY2 ;繼電器 2 OFF
26: 001D D2 B6 SETB RELAY3 ;繼電器 3 OFF
27: 001F 12 00 45 CALL DELAY
28:
29: 0022 D2 B4 SETB RELAY1 ;繼電器 1 OFF
30: 0024 C2 B5 CLR RELAY2 ;繼電器 2 ON
31: 0026 D2 B6 SETB RELAY3 ;繼電器 3 OFF
32: 0028 D2 B7 SETB RELAY4 ;繼電器 4 OFF
33: 002A 12 00 45 CALL DELAY
34:
35: 002D D2 B5 SETB RELAY2 ;繼電器 2 OFF
36: 002F D2 B4 SETB RELAY1 ;繼電器 1 OFF
37: 0031 C2 B6 CLR RELAY3 ;繼電器 3 ON
38: 0033 D2 B7 SETB RELAY4 ;繼電器 4 OFF
39: 0035 12 00 45 CALL DELAY
40:
41: 0038 D2 B6 SETB RELAY3 ;繼電器 3 OFF
42: 003A D2 B4 SETB RELAY1 ;繼電器 1 OFF
43: 003C D2 B5 SETB RELAY2 ;繼電器 2 OFF
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 2
Line I Addr Code Source
44: 003E C2 B7 CLR RELAY4 ;繼電器 4 ON
45: 0040 12 00 45 CALL DELAY
46:
47: 0043 80 D0 JMP RUN
48:=====================================================================
49: ;軟體延遲計時副程式
50: 0045 DELAY:
51: 0045 7B FF MOV R3,#0FFH
52: 0047 DELA:
53: 0047 7C FF MOV R4,#0FFH
54: 0049 DELB:
55: 0049 B2 A7 CPL WATCHDOG
56: 004B DC FC DJNZ R4,DELB
57: 004D DB F8 DJNZ R3,DELA
58: 004F 22 RET
59: END
register banks used: ---
no errors
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 3
L I S T O F S Y M B O L S
=============================
SYMBOL TYPE VALUE LINE
------------------------------------------------------------
AC BIT D6
ACC DATA E0
AGAIN CODE 000B 14
B DATA F0
CY BIT D7
DELA CODE 0047 52
DELAY CODE 0045 50
DELB CODE 0049 54
DPH DATA 83
DPL DATA 82
EA BIT AF
ES BIT AC
ET0 BIT A9
ET1 BIT AB
EX0 BIT A8
EX1 BIT AA
EXTI0 CODE 0003
EXTI1 CODE 0013
F0 BIT D5
IE DATA A8
IE0 BIT 89
IE1 BIT 8B
INT0 BIT B2
INT1 BIT B3
IP DATA B8
IT0 BIT 88
IT1 BIT 8A
OV BIT D2
P BIT D0
P0 DATA 80
P1 DATA 90
P2 DATA A0
P3 DATA B0
PCON DATA 87
PS BIT BC
PSW DATA D0
PT0 BIT B9
PT1 BIT BB
PX0 BIT B8
PX1 BIT BA
RB8 BIT 9A
RD BIT B7
RELAY1 BIT B4 5
RELAY2 BIT B5 6
RELAY3 BIT B6 7
RELAY4 BIT B7 8
REN BIT 9C
RESET CODE 0000
RI BIT 98
RS0 BIT D3
ASEM-51 V1.2 Copyright (c) 1996 by W.W. Heinz PAGE 4
SYMBOL TYPE VALUE LINE
------------------------------------------------------------
RS1 BIT D4
RUN CODE 0015 21
RXD BIT B0
SBUF DATA 99
SCON DATA 98
SINT CODE 0023
SM0 BIT 9F
SM1 BIT 9E
SM2 BIT 9D
SP DATA 81
T0 BIT B4
T1 BIT B5
TB8 BIT 9B
TCON DATA 88
TF0 BIT 8D
TF1 BIT 8F
TH0 DATA 8C
TH1 DATA 8D
TI BIT 99
TIMER0 CODE 000B
TIMER1 CODE 001B
TL0 DATA 8A
TL1 DATA 8B
TMOD DATA 89
TR0 BIT 8C
TR1 BIT 8E
TXD BIT B1
WATCHDOG BIT A7 3
WR BIT B6
|
(b)產生RELAYOUT.HEX :0300000002000BF0 :10000B00B2A7D2B4D2B5D2B6D2B7B2A7D2B7C2B416 :10001B00D2B5D2B6120045D2B4C2B5D2B6D2B7124F :10002B000045D2B5D2B4C2B6D2B7120045D2B6D2C1 :10003B00B4D2B5C2B712004580D07BFF7CFFB2A70C :05004B00DCFCDBF822E3 :00000001FF |
|
<2>轉換二進碼程序 : C:\Asem\HEXBIN RELAYOUT.HEX RELAYOUT.BIN |
|
<<商標聲明>>
本網站於瀏覽者顯示器所出現之商標,皆為所屬公司之註冊商標,絕無侵犯之意。 建議使用I.E 4.0以上版本瀏覽器解析度1024*768觀看 |