---------------------------------------------
-- 时间:2018-10-29
-- 创建人:Ruo_Xiao
-- 邮箱:xclsoftware@163.com
---------------------------------------------

一、ASM

DELAY:MOV R3,#7FH
DEL2: MOV R4,#0FFH
DEL1: NOP
DJNZ R4 ,DEL1
DJNZ R3 ,DEL2
RET

二、解释

1、DJNZ的功能有两点,首先是将R4减1,然后看等于0否,二是转移,减1后结果不是0,则转移到指定的地址,如EDL1,DEL2,结果=0,则往下执行。就这么简单的事。
2、整个子程序是个两层循环的延时程序,开始,R3=7FH,是127,再是:R4=FFH,是255,下面开始循环,一条NOP空操作,就是为了延时的,然后DJNZ,R4减1,不为0,转移到EDL1,又是NOP延时,如此,循环255次后,R4=0,内层循结束,往下,R3减1,R3不为0,转移到DEL2,重新开始R4=FFH,再循环255次。这样,外层循环是R3的127次,内层是R4的255次,一共循环是255*127次,结束返回。

(SAW:Game Over!)

C51 汇编 双层循环延时代码相关推荐

  1. JAVA8的双重循环怎么优化_Java8处理List的双层循环问题代码实例

    本篇文章小编给大家分享一下Java8处理List的双层循环问题代码实例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. Java处理List的双层循环程 ...

  2. c51语言双层for循环延时2ms,51单片机利用for语句嵌套实现简单的延时1s功能

    原标题:51单片机利用for语句嵌套实现简单的延时1s功能 51单片机利用for语句嵌套实现简单的延时1s功能 名词解释: (1)时钟周期.定义为时钟频率的倒数,本例使用12MHz的时钟频率,它的时钟 ...

  3. 嵌入式_常见延时方式的差异与选择(for循环延时、定时器延时、汇编延时....)

    嵌入式_常见延时方式的差异与选择(for循环延时.定时器延时.汇编延时-) 这里整理几种常见的延时方式,并做简单测试供大家参考,如果有什么不对的地方,欢迎指正,共同探讨. 文章目录 嵌入式_常见延时方 ...

  4. php一个循环九九乘法表代码_php双层循环(九九乘法表)

    php双层循环(九九乘法表) 实例如下: echo " for($i=1;$i<=9;$i++) //控制每行 { echo " "; //输出一行 for($j= ...

  5. C51汇编伪指令 CSEG DSEG

    转自:http://blog.sina.com.cn/s/blog_6728e8790100i1r1.html C51汇编伪指令: 1.DS ---预留存储区命令 格式: [标号:] DS   表达式 ...

  6. 用c51语言把连续字节做比较,C51优化设计之循环语句(转)

    本帖最后由 ming1006 于 2013-4-6 14:49 编辑 最近在用51中因为对速度的需求很严重,于是研究了下51单片机C语言的优化问题,稍等会分享.这里先把刚才搜到的一篇不错的文章和大家分 ...

  7. c51语言1秒延时程序,KeilC51程序设计中几种精确延时方法

    实现延时通常有两种方法: 一种是硬件延时,要用到定时器/计数器,这种方法可以提高CPU的工作效率,也能做到精确延时:另一种是软件延时,这种方法主要采用循环体进行. 1 使用定时器/计数器实现精确延时 ...

  8. 怎么用C51语言实现50ms延时,单片机入门-C51语言实现简单的红绿LED交通灯控制

    原标题:单片机入门-C51语言实现简单的红绿LED交通灯控制 视频教程如下: 本文介绍了用C51语言实现十字路口交通灯控制: 四个路口各有红.绿2个LED,模拟交通灯的控制,即东西走向的灯变红,南北走 ...

  9. python 双层for循环_day05-Python运维开发基础(双层循环、pass/break/continue、for循环)...

    #### 双层循环练习 #十行十列小星星 j =0while j<10:#逻辑代码写在下面 #打印一行十个小星星 i =0while i<10:print("*",en ...

最新文章

  1. golang log4go 使用说明及丢失日志原因
  2. SAP中如何给成本要素分配多个默认成本中心
  3. 云炬Android开发笔记 使用新版本Android studio快速Build低版本项目的仓库代码(标红部分)
  4. 专题:固体力学中应力与应变分析详解(7.应变分析 7.8用已测量的应变确定主应变 7.9应变花的莫尔应变圆)...
  5. json和python中字典的区别和联系_Python 中json与字典的关系
  6. 二极管的结构、特性、参数、稳压管的特性和参数
  7. hive报错:hive create table: Specified key was too long; max key length is 767 bytes
  8. 《深入浅出DPDK》读书笔记(五):同步互斥机制
  9. “无继承”情况下的对象构造
  10. Oracle中用于发送邮件的存储过程
  11. php 多个箭头,php连续的两个箭头-〉是什么意思??
  12. OpenCASCADE Expression Interpreter by Flex Bison
  13. 路由器连接校园网(多个账号,单个账号)
  14. 如何修复苹果Mac中的快速视频播放错误
  15. 计算机发展变化英文作文60词,生活中的变化英文作文(精选4篇)
  16. 数字图像分辨率的认识
  17. android 换肤 字体颜色,Android换肤
  18. 511遇见易语言子程序参考的作用
  19. k短路(HDU6705)
  20. Windows技术文章汇集

热门文章

  1. 【hibernate框架】一对多(多对一)双向CRUD-关于delete2
  2. Fix Missing Scripts
  3. 如果有一天,我们再见面
  4. java 图形库_OpenGL开放图形java库jogamp-all-platforms.7z
  5. 【代码】python paramiko模块代码示例:远程执行命令及上传和下载
  6. Scala可以将Java中的接口当作特质来使用
  7. Rancher--Docker容器管理工具的安装与启动
  8. Python3 replace()实现字符串替换
  9. 【视频】v-bind的使用
  10. 店宝宝电脑版_用店宝宝是为了什么?客服全权负责开启属于您的个人店铺