線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2240
推到 Plurk!
推到 Facebook!

新手疑問關於組合語言

答題得分者是:
v120514
一般會員


發表:8
回覆:21
積分:5
註冊:2005-04-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-08-19 06:02:04 IP:220.132.xxx.xxx 未訂閱
我想了好幾天..決定還是用問的.問題可能有點.. 不過我真的想不通..打結了 我的疑問是.. 1:任何單晶片都可以使用組合語言嗎?... 2:*.ASM 是不是就是組合語言?.. 3:組合語言組譯器有多少種是否都可共用?..我使用的是課本附的AJON51
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-08-19 07:32:49 IP:210.64.xxx.xxx 未訂閱
引言: 1:任何單晶片都可以使用組合語言嗎?...
引言: 2:*.ASM 是不是就是組合語言?..
它是組合語言寫的程式檔
引言: 3:組合語言組譯器有多少種是否都可共用?..我使用的是課本附的AJON51
如果是 51 是有很多種。 也不一定能共用。 有些有 REG 有些用 EQU
v120514
一般會員


發表:8
回覆:21
積分:5
註冊:2005-04-18

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-08-19 08:30:03 IP:220.132.xxx.xxx 未訂閱
這程式是我網路抓下來做參考的他副檔名是.ASM 我沒法組譯,程式中還有許多問題不知是何意思.. 因為是簡體很多是亂碼..程式如下
$NOMOD51
$INCLUDE(REG935.INC)  <---$這又代表甚麼?..
HC595_CS                BIT        P2.4    <--BIT 是甚麼意思?..
HC595_CLK                BIT        P2.5
HC595_DAT                BIT        P2.2    ORG        0000H
        AJMP        MAIN            ORG        0100H
MAIN:
        MOV        P1M1,#0x80   <----#0x80 那x又是甚麼?...                MOV        P1M2,#0x00
        MOV        P2M1,#0x00                
        MOV        P2M2,#0x00    ;------------------------
        MOV        ADINS,#0x01                        ;0000 0001ㄛ 恁寁channel
        MOV        ADMODA,#0x01                        ;0000 0001ㄛ 恁寁蛌遙馱釬耀宒ㄩ等棒蛌遙耀宒
        MOV        ADMODB,#0x00                        ;500Khz < ADC CLK < 3.3Mhzㄛ,
;------------------------
LOOP:
        MOV        ADCON0,#0x05                        ;恁寁蛌遙揖楷耀宒;甜蕾撈?雄
        MOV        A,AD0DAT0                        ;蔚蛌遙腔杅擂湔?A
        ACALL        HC595_SENDDAT                        ;覃蚚珆尨最唗
        MOV        A,ADCON0
        ANL        A,#0xF7        
        MOV        ADCON0,A                        ;?壺AD蛌遙俇傖梓祩
        
        ACALL         Delay2ms                        ;晊奀
        AJMP        LOOP
        RET
;**************************
;砃74HC595楷冞杅擂赽最唗
;?諳統杅ㄩACC渾楷冞杅擂
;梩蚚訧埭ㄩR7,CY
;*************************
HC595_SENDDAT:
        CLR        HC595_CS
        MOV        R7,#8
HC595_SDL1:        
        CLR        HC595_CLK
        RLC        A                                ;蔚猁楷冞腔杅擂郔詢弇痄祫CY
        MOV        HC595_DAT,C                        ;扢离杅擂盄
        NOP
HC595_SDL2:
        SETB        HC595_CLK
        NOP
        DJNZ        R7,HC595_SDL1                        ;痄弇8棒            SETB        HC595_CS                        ;怀堤珆尨杅擂
        CLR        HC595_CS                        ;壽敕74HC595
        RET
;*******************
;髡夔ㄩ晊奀
;*******************
Delay2ms:
        MOV        R7,#0xC8
LOOP1:
        ACALL        Delay10us
        DJNZ        R7,LOOP1
        RET    Delay10us:
        DB        00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
        DB        00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H,00H
        RET
        
        END
單晶片都可以使用組合語言.. 那所需條件..除了指令,腳位位址(如P0.0位址80H)稱做位址不知道有沒有錯 除了這2個必備還需要甚麼嗎.. 我的問題還有好多喔,總覺得一直無法進入狀況..

版主


發表:261
回覆:2302
積分:1667
註冊:2005-01-04

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-08-19 08:47:35 IP:218.175.xxx.xxx 未訂閱
1> $ 你要去看人家使用什麼compiler ,看裡頭怎麼定義. 基本上這一行是把REG935.INC include 進去. 2> P2.4不就是一個 bit嗎? 把HC595_CS定義為P2.4, 以後看到HC595_CS就是指P2.4 3> 0x80在這裡是指 80H 先生, 你用的CHIP跟人家不一樣, compiler又不一樣, 當然會很多問題. 既然使用的是課本附的compiler, 就去看看課本的說明與程式吧! 把它全搞懂了再去看其他的吧. 單晶片都可以使用組合語言.所需條件:支援指令. 腳位位址. 各暫存器位址. 適合的compiler & linker. 剛開始學都是這樣的, 要花時間付出去學習, 才能有所收穫. 練功夫...功夫就是時間...花時間去練..久了就是你的.
------
-------------------------------------------------------------------------
走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!?
v120514
一般會員


發表:8
回覆:21
積分:5
註冊:2005-04-18

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-08-19 10:16:08 IP:220.132.xxx.xxx 未訂閱
引言: 1> $ 你要去看人家使用什麼compiler ,看裡頭怎麼定義. 基本上這一行是把REG935.INC include 進去. 2> P2.4不就是一個 bit嗎? 把HC595_CS定義為P2.4, 以後看到HC595_CS就是指P2.4 3> 0x80在這裡是指 80H 先生, 你用的CHIP跟人家不一樣, compiler又不一樣, 當然會很多問題. 既然使用的是課本附的compiler, 就去看看課本的說明與程式吧! 把它全搞懂了再去看其他的吧. 單晶片都可以使用組合語言.所需條件:支援指令. 腳位位址. 各暫存器位址. 適合的compiler & linker. 剛開始學都是這樣的, 要花時間付出去學習, 才能有所收穫. 練功夫...功夫就是時間...花時間去練..久了就是你的.
1> $ 你要去看人家使用什麼compiler ,看裡頭怎麼定義. 基本上這一行是把REG935.INC include 進去. 2> P2.4不就是一個 bit嗎? 把HC595_CS定義為P2.4, 以後看到HC595_CS就是指P2.4 3> 0x80在這裡是指 80H 先生, 你用的CHIP跟人家不一樣, compiler又不一樣, 當然會很多問題. 既然使用的是課本附的compiler, 就去看看課本的說明與程式吧! 把它全搞懂了再去看其他的吧. 單晶片都可以使用組合語言.所需條件:支援指令. 腳位位址. 各暫存器位址. 適合的compiler & linker. 剛開始學都是這樣的, 要花時間付出去學習, 才能有所收穫. 練功夫...功夫就是時間...花時間去練..久了就是你的. [/quote] 1> $ 你要去看人家使用什麼compiler ,看裡頭怎麼定義. 基本上這一行是把REG935.INC include 進去. 我很笨還是不太懂.能舉例嗎 之前我問DJNZ R7,$這我知道.那他這也用到$所以我就打結了.. 2: HC595_CS EQU P2.4 HC595_CS BIT P2.4 這2個是一樣的喔 chip不同組譯器也會不同喔.. 我一直認為他副檔名是.ASM 那我的組譯器也能用.(原來這是錯誤的觀念) 那顆chip是LPC935 他指令好像跟8051一樣. 我看不懂他A/D怎麼轉換..ic手冊又多是英文看沒有.只看的懂指令還有位址 所以想找一些程式例子做研究.. 在學習過程中..我知道要有付出才有收穫.. 可是有些東西在我有限資源裡面我找不到答案.. 所以只好麻煩各位前輩..在妳們眼裡可能是不起眼的 但是在我門眼裡就有如高山.讓我看不到前方的路.. 我只知道我要學習..我就要勇敢發問.. 我只知道我有發問就有機會..不發問就沒機會.. 謝謝 前輩們的教導... 發表人 - v120514 於 2005/08/19 13:02:44

版主


發表:261
回覆:2302
積分:1667
註冊:2005-01-04

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-08-20 01:01:01 IP:59.113.xxx.xxx 未訂閱
給你個建議, 在你現在用的chip 與compiler摸熟前先不要去看其他的, 容易混淆. 熟了之後通通都是同理可證, 一理通百理明.    你這樣問, 說實在....我也不知道怎樣回....有的東西懂了就是你的...不懂的話就是不懂....也許我表達能力有待加強
------
-------------------------------------------------------------------------
走是為了到另一境界,停是為了欣賞人生;未走過千山萬水,怎知生命的虛實與輕重!?
chihyuchen
一般會員


發表:0
回覆:4
積分:0
註冊:2003-05-09

發送簡訊給我
#7 引用回覆 回覆 發表時間:2006-08-04 09:53:11 IP:61.222.xxx.xxx 未訂閱

其實組合語言簡單的說就是,根據每個晶片有支援不同的指令碼,

每家CPU的指令也許雷同8051也許自成一格,所以各家有各家的COMPILER

可以把指令編成機械碼,有相同指令的CPU不見得可以用相同的COMPILER

因為她轉出的機械碼也許不同.所以你要先看懂你這個CPU支援的指令及其規定的語法,這樣你就可以寫程式了.組合語言的基本原理都差不多.你要加油

阿信
版主


發表:111
回覆:983
積分:813
註冊:2005-03-10

發送簡訊給我
#8 引用回覆 回覆 發表時間:2006-08-04 10:28:07 IP:61.66.xxx.xxx 未訂閱

$是跳到這一行 $ 1是下一行 $-2是前兩行
DJNZ R7,$減1不為0 跳回原本這一行指令執行

在學習技術上 英文實在是很必須的
如果看不懂 有很多即時或線上翻譯軟體能用
看久了自然就會記得了

除了一些很經典或是很基本的能找的到中文之外
其它大部份都要靠英文.
現在大陸也開始發展了 他們翻譯外來技術文件
比台灣積極太多了
所以 有些文件還可以看看大陸翻譯的
當然前提要看的懂簡體

下面是用"LPC935"在google找到的第三項
周立功單片機--P89LPC936 ...[ 簡體 ]
http://www.zlgmcu.com/philips/lpc900/p89lpc933.asp

有一些資料手冊跟應用設計

加油 一步一腳印!

阿信
版主


發表:111
回覆:983
積分:813
註冊:2005-03-10

發送簡訊給我
#9 引用回覆 回覆 發表時間:2006-08-04 10:33:33 IP:211.21.xxx.xxx 未訂閱
補充一下
如正大所講的 先把課本摸熟了
再配合實作操作 自然能融會貫通
系統時間:2024-05-21 5:29:21
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!