|
![](static/image/common/ico_lz.png)
楼主 |
发表于 12-11-2007 08:29 PM
|
显示全部楼层
关于part1, 我的方法是。。。。 ![](static/image/smiley/default/sweat.gif)
.Macro ReverseNibbles
sbrc @0,0
sbr @1,7
sbrc @0,1
sbr @1,6
sbrc @0,2
sbr @1,5
sbrc @0,3
sbr @1,4
sbrc @0,4
sbr @1,3
sbrc @0,5
sbr @1,2
sbrc @0,6
sbr @1,1
sbrc @0,7
sbr @1,0
mov @0,@1
.EndMacro
*sbrc = skip if bit in register is clear
*sbr = set bit in register
*@0/1 = parameter for macro
我还没见过那么长的macro.....![](static/image/smiley/default/sweat.gif) ![](static/image/smiley/default/sweat.gif)
如果是做工肯定给老板骂死...![](static/image/smiley/default/sweat.gif)
part 2
Armega 16 的确没有divide function,这是lecturer特地刁难我们。。。![](static/image/smiley/default/sweat.gif)
他给的hint是 substract ![](static/image/smiley/default/sweat.gif) |
|