51单片机汇编100例pdf语言

21ic官方微信 -->
单片机编程之汇编语言基础-PIC单片机汇编指令
&本文引用地址:
1、 程序的基本格式
先介绍二条伪指令:
EQU &&标号赋值伪指令
ORG &&地址定义伪指令
PIC16C5X在RESET后指令计算器PC被置为全&1&,所以PIC16C5X几种型号芯片的复位地址为:
PIC16C54/55:1FFH
PIC16C56:3FFH
PIC16C57/58:7FFH
一般来说,PIC的源程序并没有要求统一的格式,大家可以根据自己的风格来编写。但这里我们推荐一种清晰明了的格式供参考。
TITLE This is && ;程序标题
;--------------------------------------
;名称定义和变量定义
;--------------------------------------
F0    EQU  0
RTCC   EQU  1
PC    EQU  2
STATUS  EQU  3
FSR   EQU  4
RA    EQU  5
RB    EQU  6
RC    EQU  7
PIC16C54 EQU 1FFH ;芯片复位地址
PIC16C56 EQU 3FFH
PIC16C57 EQU 7FFH
;-----------------------------------------
ORG PIC16C54 GOTO MAIN   ;在复位地址处转入主程序
ORG   0          ;在0000H开始存放程序
;-----------------------------------------
;-----------------------------------------
DELAY MOVLW 255
;------------------------------------------
;------------------------------------------
TRIS RB       ;RB已由伪指令定义为6,即B口
BSF RB,7 CALL DELAY
BCF RB,7 CALL DELAY
;-------------------------------------------
END       ;程序结束
注:MAIN标号一定要处在0页面内。
2、程序设计基础
1) 设置 I/O 口的输入/输出方向
PIC16C5X的I/O 口皆为双向可编程,即每一根I/O 端线都可分别单独地由程序设置为输入或输出。这个过程由写I/O 控制寄存器TRIS
f来实现,写入值为&1&,则为输入;写入值为&0&,则为输出。
MOVLW 0FH  ;FH)
TRIS 6    ;将W中的0FH写入B口控制器,
;B口高4位为输出,低4位为输入。
MOVLW 0C0H ; 11 C0H)
RB4,RB5输出0 RB6,RB7输出1
2) 检查寄存器是否为零
如果要判断一个寄存器内容是否为零,很简单,现以寄存器F10为例:
MOVF 10,1      ;F10&F10,结果影响零标记状态位Z
BTFSS STATUS,Z    ;F10为零则跳
GOTO NZ        ;Z=0即F10不为零转入标号NZ处程序
┋          ;Z=1即F10=0处理程序
3) 比较二个寄存器的大小
要比较二个寄存器的大小,可以将它们做减法运算,然后根据状态位C来判断。注意,相减的结果放入W,则不会影响二寄存器原有的值。
例如F8和F9二个寄存器要比较大小:
MOVF 8,0       ;F8&W
SUBWF 9,0      ;F9&W(F8)&W
BTFSC STATUS,Z    ;判断F8=F9否
GOTO F8=F9
BTFSC STATUS,C    ;C=0则跳
GOTO F9&F8       ;C=1相减结果为正,F9&F8
F9       ;C=0相减结果为负,F9
4) 循环n次的程序
如果要使某段程序循环执行n次,可以用一个寄存器作计数器。下例以F10做计数器,使程序循环8次。
COUNT EQU 10     ;定义F10名称为COUNT(计数器)
MOVWF COUNT LOOP   ;循环体
DECFSZ COUNT,1    ;COUNT减1,结果为零则跳
GOTO LOOP       ;结果不为零,继续循环
┋       ;结果为零,跳出循环
5)&IF&&THEN&&&格式的程序
下面以&IF X=Y THEN GOTO NEXT&格式为例。
MOVF X,0      ;X&W
SUBWF Y,0     ;Y&W(X)&W
BTFSC STATUS,Z   ;X=Y 否
GOTO NEXT      ;X=Y,跳到NEXT去执行。
┋       ;X&Y
6)&FOR&&NEXT&格式的程序
&FOR&&NEXT&程序使循环在某个范围内进行。下例是&FOR X=0 TO 5&格式的程序。F10放X的初值,F11放X的终值。
START  EQU  10
DAEND  EQU  11
MOVWF START     ; 0&START(F10)
MOVWF DAEND     ;5&DAEND(F11)
INCF START,1     ;START值加1
MOVF START,0
SUBWF DAEND,0     ;START=DAEND ?(X=5否)
BTFSS STATUS,Z
GOTO LOOP        ;X&5,继续循环
┋        ;X=5,结束循环
7)&DO WHILE&&END&格式的程序
&DO WHILE&&END&程序是在符合条件下执行循环。下例是&DO WHILE X=1&格式的程序。F10放X的值。
X  EQU  10
MOVWF  X     ;1&X(F10),作为初值
SUBWF X,0
对于搞单片机的特别用8051系列工程师来说,谈到单片机的RTOS,很多时候会问一句:“为什么要用RTOS?单片机就这一点资源,使用RTOS能保证效率吗?”......关键字:
现在想起来,当时的情形还历历在目。当时工作非常艰辛,累得我是满地找牙。记得进厂的第一天,就加班通霄,以后天天晚上加班至12点,早上7点起床。......关键字:
我 要 评 论
大家都爱看
我们有能力创造一些能保持前代性能并且更好更小的电子设备,例如今天的可穿戴设备、智能手机或平板电脑,这是由于很多因素超过摩尔定律而快速发展,从而能够从底层的嵌入组件发展到今天把它们封…
自适应和智能计算的全球领先企业赛灵思公司(Xilinx, Inc.,(NASDAQ:XLNX)),近日宣布推出一款超越FPGA功能的突破性新型产品,名为ACAP(Adaptive Compute Acceleration Platform,自适应计算加速…
先进嵌入式系统解决方案的领导者赛普拉斯(纳斯达克代码:CY)近日宣布其Wi-Fi®和蓝牙®combo解决方案为全新的树莓派 3 B+(Raspberry Pi 3Model B+)IoT单板计算机提供强大稳定的无线连接…
随着云服务器、云计算的发展,大家对硬件加速的需求越来越多,但是随着设备功耗的上升、性能需求越来越高,常规加速设备以及开始不能满足需求,因此FPGA逐渐在硬件加速中找到了自己的位置,而艾…
白宫周一(3月12日)晚发出声明,川普(特朗普)总统出于“国家安全”考量、禁止新加坡博通公司(Broadcom)收购美国高通公司(Qualcomm)。
业界早知道
06-2906-2906-2906-2906-2906-29
精读涨姿势
03-2309-0810-1602-1706-0806-30单片机有没有必要用汇编讲? - 知乎有问题,上知乎。知乎作为中文互联网最大的知识分享平台,以「知识连接一切」为愿景,致力于构建一个人人都可以便捷接入的知识分享网络,让人们便捷地与世界分享知识、经验和见解,发现更大的世界。305被浏览<strong class="NumberBoard-itemValue" title="2分享邀请回答添加评论分享收藏感谢收起添加评论分享收藏感谢收起&>&单片机汇编语言书籍(汇编)
单片机汇编语言书籍(汇编)
上传大小:184KB
单片机汇编语言单片机汇编语言单片机汇编语言单片机汇编语言单片机汇编语言单片机汇编语言单片机汇编语言
综合评分:4
{%username%}回复{%com_username%}{%time%}\
/*点击出现回复框*/
$(".respond_btn").on("click", function (e) {
$(this).parents(".rightLi").children(".respond_box").show();
e.stopPropagation();
$(".cancel_res").on("click", function (e) {
$(this).parents(".res_b").siblings(".res_area").val("");
$(this).parents(".respond_box").hide();
e.stopPropagation();
/*删除评论*/
$(".del_comment_c").on("click", function (e) {
var id = $(e.target).attr("id");
$.getJSON('/index.php/comment/do_invalid/' + id,
function (data) {
if (data.succ == 1) {
$(e.target).parents(".conLi").remove();
alert(data.msg);
$(".res_btn").click(function (e) {
var parentWrap = $(this).parents(".respond_box"),
q = parentWrap.find(".form1").serializeArray(),
resStr = $.trim(parentWrap.find(".res_area_r").val());
console.log(q);
//var res_area_r = $.trim($(".res_area_r").val());
if (resStr == '') {
$(".res_text").css({color: "red"});
$.post("/index.php/comment/do_comment_reply/", q,
function (data) {
if (data.succ == 1) {
var $target,
evt = e || window.
$target = $(evt.target || evt.srcElement);
var $dd = $target.parents('dd');
var $wrapReply = $dd.find('.respond_box');
console.log($wrapReply);
//var mess = $(".res_area_r").val();
var mess = resS
var str = str.replace(/{%header%}/g, data.header)
.replace(/{%href%}/g, 'http://' + window.location.host + '/user/' + data.username)
.replace(/{%username%}/g, data.username)
.replace(/{%com_username%}/g, data.com_username)
.replace(/{%time%}/g, data.time)
.replace(/{%id%}/g, data.id)
.replace(/{%mess%}/g, mess);
$dd.after(str);
$(".respond_box").hide();
$(".res_area_r").val("");
$(".res_area").val("");
$wrapReply.hide();
alert(data.msg);
}, "json");
/*删除回复*/
$(".rightLi").on("click", '.del_comment_r', function (e) {
var id = $(e.target).attr("id");
$.getJSON('/index.php/comment/do_comment_del/' + id,
function (data) {
if (data.succ == 1) {
$(e.target).parent().parent().parent().parent().parent().remove();
$(e.target).parents('.res_list').remove()
alert(data.msg);
//填充回复
function KeyP(v) {
var parentWrap = $(v).parents(".respond_box");
parentWrap.find(".res_area_r").val($.trim(parentWrap.find(".res_area").val()));
评论共有1条
如果程序后面有详细的说明就更好了。
moonlightmulan
综合评分:
积分/C币:0
综合评分:
积分/C币:0
VIP会员动态
CSDN下载频道资源及相关规则调整公告V11.10
下载频道用户反馈专区
下载频道积分规则调整V1710.18
spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip
资源所需积分/C币
当前拥有积分
当前拥有C币
输入下载码
为了良好体验,不建议使用迅雷下载
单片机汇编语言书籍(汇编)
会员到期时间:
剩余下载个数:
剩余积分:0
为了良好体验,不建议使用迅雷下载
积分不足!
资源所需积分/C币
当前拥有积分
您可以选择
程序员的必选
绿色安全资源
资源所需积分/C币
当前拥有积分
当前拥有C币
为了良好体验,不建议使用迅雷下载
资源所需积分/C币
当前拥有积分
当前拥有C币
为了良好体验,不建议使用迅雷下载
资源所需积分/C币
当前拥有积分
当前拥有C币
您的积分不足,将扣除 10 C币
为了良好体验,不建议使用迅雷下载
无法举报自己的资源
你当前的下载分为234。
你还不是VIP会员
开通VIP会员权限,免积分下载
你下载资源过于频繁,请输入验证码
您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:!
若举报审核通过,可返还被扣除的积分
被举报人:
举报的资源分:
请选择类型
资源无法下载 ( 404页面、下载失败、资源本身问题)
资源无法使用 (文件损坏、内容缺失、题文不符)
侵犯版权资源 (侵犯公司或个人版权)
虚假资源 (恶意欺诈、刷分资源)
含色情、危害国家安全内容
含广告、木马病毒资源
*详细原因:
单片机汇编语言书籍(汇编)豆丁微信公众号
君,已阅读到文档的结尾了呢~~
广告剩余8秒
文档加载中
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
单片机汇编语言程序设计
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='http://www.docin.com/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口}

我要回帖

更多关于 单片机汇编语言100例 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信