ASEM-51v1.2(Freeware)組合語言編譯過程
作者 : 自動化技術網
ASEM-51v1.2(Freeware)組合語言編譯過程 自動化技術網


1. 先下載ASEM-51v1.2的程式壓縮檔asem5112.zip.(下載)

2. 使用MS-DOS2.0以上版本或win95,98,Me的DOS模式.

3. 建立一目錄\Asem51,並將檔案解壓縮至該目錄.

4. 組合語言原始檔為XXX.A51,附檔名為A51.

5. 使用ASEM.exe編譯程式進行編譯,產生 .Lst與 .Hex檔.

6. 二進碼檔則在使用HEXBIN.exe轉換程式產生.bin檔.

範例:
欲編譯之組合語言原始程式 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
產生.bin二進碼檔案供模擬或燒錄之用.



<<商標聲明>>
本網站於瀏覽者顯示器所出現之商標,皆為所屬公司之註冊商標,絕無侵犯之意。
建議使用I.E 4.0以上版本瀏覽器解析度1024*768觀看