Re: [問題] 組合語言比較大小相等的問題 MSP430

看板ASM (組合語言)作者 (KeNji)時間15年前 (2010/01/14 09:46), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《p8779r (阿花boys)》之銘言: : 最近在用MSP430寫一些小程式 : 其中"比較大小"的地方 讓我傷透腦筋 怎樣寫都不OK : 例如: 現在要判斷大小[數字都是十進位] : MOV #2331,R9 : MOV #3000,R10 : CMP R9,R10 : JHS L1 : JMP L2 : L1: : L2: : 設想 因為R10>R9,所以會跳到L1 但是沒辦法執行 如何沒辦法執行?不太能理解您所說的沒辦法執行是哪方面沒辦法執行 L2何不放在JHS L1下面就好 再多一行JMP幹嘛哩@@ : 另外 我用BIT.B判斷相等 也是錯誤 bit.b怎麼判斷?判斷R9跟R10? bit.(b)顧名思義就是比較單一bit...例如:bit.b #01h,R9 ;比較R9的01h為1 or 0 : MOV #1,R11 : MOV #2,R12 : CMP R11,R12 : JNE L3 : JMP L4 : 這應該跳到L3,但卻不會執行 跟第一個問題一樣 如何不能執行? : 是因為MSP430裡面組合語言 : 比較有限制幾位元嘛? 2000多太大? 限制幾位元當然有 你寫的最大單位就是WORD 2000會不會太大?我知道最大可以寫到16進位的0FFFFh,你覺得2000會大嗎?我是覺得還好 430的語法有兩種模式 例如:mov.w mov.b而mov.w=mov 後面.w是一次寫一個word..後面是.b是一次寫一個bit 無法執行的原因 最好是全部貼出來 不然光這兩三行 我可以肯定 在我的430上...是可以執行的= = : 拜託大家指導一下 謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.127.180.87

02/02 00:31, , 1F
430可以用C語言寫 何不考慮C語言來血呢
02/02 00:31, 1F
文章代碼(AID): #1BJdTbGS (ASM)
文章代碼(AID): #1BJdTbGS (ASM)