作者kenji1101 (KeNji)
看板ASM
标题Re: [问题] 组合语言比较大小相等的问题 MSP430
时间Thu Jan 14 09:46:11 2010
※ 引述《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
1F:→ ilike1128:430可以用C语言写 何不考虑C语言来血呢 02/02 00:31