单片机第二次作业
时间:11-25
来源:互联网
点击:
作业:将A扩大十倍(A值较小,不溢出)
,此题方法较多,根据材料有三种做法,下面就一一列出。(既然此题如此繁琐,就请大家给个好评吧!)
当然刚开始还是新建文件和工程,大家都懂得!那么我就直接粘贴啦!
1、先fileànew 建asm文件6.asm
方法一: MOV B,#10
MUL AB
END
为了调试时看数据,预先在A中赋值为01H(既然A值较小,不溢出,那么就选个小一点的吧,简单嘛!)所以程序前加:
MOV A,#01H
2、建新工程,Projectànew project ,选AtemlàAT89C51 ,导入文件6.asm。
注意,对初学者,一个工程里只能有本程序6.asm,无关的程序要删除,新试验一个程序最好重新建工程,以保证一个工程里只有你要试验的那一个程序。
3、可见程序
4、编译通过后,点debug下的start/stop开始调试, step 和step over都是单步调试,step是遇到子程序或中断也要进入进行单步调试,step over是遇到子程序或中断当一句一次执行完。本程序物子程序,二者是一样的。我们执行一句得到:
可见A中的值变为01H,B中还为0,
B中数据已变为0ah,再执行一步,可见:
.
A与B相乘,A中存放低八位。所以A中的值为0AH,B中的值为00H.
,可知已经把A扩大了十倍,这个程序简单吧?!不过,别急,有简单就有复杂的,不过谁好谁坏就不知道了,总之能用就行。
方法二:新建文件和工程就不罗嗦了,直接看程序吧!
呵呵,是不是复杂了一些?不过,别怕。一步步来看。执行一步可见:
可见A中的值变为01H,B中还为0,
可见B中的值也变为01H。接着执行:
可见A中的值变为02H。接着执行:
可见:RO中的值变为02H。接着执行:
可见:A中的值变为04H。接着执行:
可见:A中的值变为05H。接着执行:
可见:B中的值也变为05H。接着执行:
哈哈,是不看到A中的值变为0AH了,那就对了!至此,第二种方法也搞定!
,有点困了,不过还是要把它写完吧!加快速度!!!
第三种方法:照样是直接看程序啦!
嗯,不是很复杂,一会就搞定了!执行一步:
可见A中的值变为01H,B中还为0,
可见:B中的值也变为01H。接着执行:
对A进行循环左移,相当于乘二,所以A中的值为02H.接着执行:
原因如上,就不说了。所以A中的值为04H.接着执行:
A和B相加,结果放到A中,所以A中的值为05H.接着执行:
还是循环左移,大家都懂吧,所以就不说啦!直接得到结果了。
,还行吧,三种方法都实现了A扩大十倍,只不过这只适合不溢出的情况。OK!写完了
,此题方法较多,根据材料有三种做法,下面就一一列出。(既然此题如此繁琐,就请大家给个好评吧!)
当然刚开始还是新建文件和工程,大家都懂得!那么我就直接粘贴啦!
1、先fileànew
方法一:
为了调试时看数据,预先在A中赋值为01H(既然A值较小,不溢出,那么就选个小一点的吧,简单嘛!)所以程序前加:
2、建新工程,Projectànew
3、可见程序
4、编译通过后,点debug下的start/stop开始调试,
可见A中的值变为01H,B中还为0,
B中数据已变为0ah,再执行一步,可见:
.
A与B相乘,A中存放低八位。所以A中的值为0AH,B中的值为00H.
,可知已经把A扩大了十倍,这个程序简单吧?!不过,别急,有简单就有复杂的,不过谁好谁坏就不知道了,总之能用就行。
方法二:新建文件和工程就不罗嗦了,直接看程序吧!
呵呵,是不是复杂了一些?不过,别怕。一步步来看。执行一步可见:
可见A中的值变为01H,B中还为0,
可见B中的值也变为01H。接着执行:
可见A中的值变为02H。接着执行:
可见:RO中的值变为02H。接着执行:
可见:A中的值变为04H。接着执行:
可见:A中的值变为05H。接着执行:
可见:B中的值也变为05H。接着执行:
哈哈,是不看到A中的值变为0AH了,那就对了!至此,第二种方法也搞定!
,有点困了,不过还是要把它写完吧!加快速度!!!
第三种方法:照样是直接看程序啦!
嗯,不是很复杂,一会就搞定了!执行一步:
可见A中的值变为01H,B中还为0,
可见:B中的值也变为01H。接着执行:
对A进行循环左移,相当于乘二,所以A中的值为02H.接着执行:
原因如上,就不说了。所以A中的值为04H.接着执行:
A和B相加,结果放到A中,所以A中的值为05H.接着执行:
还是循环左移,大家都懂吧,所以就不说啦!直接得到结果了。
,还行吧,三种方法都实现了A扩大十倍,只不过这只适合不溢出的情况。OK!写完了
单片机溢 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)