以下两个程序效果相同,一个使用汇编语言,一个使用C语言,从仿真效果看,c语言程序运行比较流畅。

两个外中断跑马灯汇编语言程序

ORG 0000H

LJMP MAIN

ORG 0003H

LJMP WZD0

ORG 0013H

LJMP WZD1

ORG 0040H

WZD0: MOV DPTR,#0220H

MOV R3,#42D

CB0:    CLR A

MOVC A,@A+DPTR

MOV P1,A

INC DPTR

LCALL DELAY2

DJNZ R3,CB0

RETI

WZD1: MOV DPTR,#0220H

MOV R3,#42D

CB1:  CLR A

MOVC A,@A+DPTR

MOV P2,A

INC DPTR

LCALL DELAY1

DJNZ R3,CB1

RETI

ORG 0150H

MAIN: MOV P1,#00H

MOV P2,#00H

SETB EA

SETB IT0

SETB EX0

CLR PX0

SETB IT1

SETB EX1

SETB PX1

ST:    MOV DPTR,#0270H

MOV R4,#17D

DD:   CLR A

MOVC A,@A+DPTR

MOV P0,A

INC DPTR

LCALL DELAY1

DJNZ R4,DD

SJMP ST

DELAY1: MOV R7,#00H

DD1: MOV R6,#00H

DD2: MOV R5,#01H

DJNZ R5,$

DJNZ R6,DD2

DJNZ R7,DD1

RET

DELAY2: MOV R7,#00H

DDD1: MOV R6,#00H

DJNZ R6,$

DJNZ R7,DDD1

RET

ORG 0220H

DB 0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80

DB 0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01

DB 0x18,0x24,0x42,0x81,0x00,0x81,0x42,0x24,0x18

DB 0x18,0x24,0x42,0x81,0x00,0x81,0x42,0x24,0x18

DB 0x18,0x00,0x3c,0x00,0x7e,0x00,0xff,0x00

ORG 0270H

DB  0xfe,0xfc,0xf8,0xe0,0xe0,0xc0,0x80,0x00

DB  0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff, 0x00

END

两个外中断跑马灯C语言程序

#include

int code yu[]={

0x00,0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80,

0x00,0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01,

0x00,0x18,0x24,0x42,0x81,0x00,0x81,0x42,0x24,0x18,

0x00,0x18,0x24,0x42,0x81,0x00,0x81,0x42,0x24,0x18,

0x00,0x18,0x00,0x3c,0x00,0x7e,0x00,0xff,0x00,0x00,

0x00     };

int code yu1[]={

0xfe,0xfc,0xf8,0xe0,0xe0,0xc0,0x80,0x00,

0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff,

0x00};

void delay(int ms)

{

while(ms--)

{

int i;

for(i=0;i<120;i++);

}

}

void ddd() interrupt 0

{

int k;

for(k=0;k<47;k++)

{

P2=yu[k];

delay(100);

}

}

void dd() interrupt 1

{

int k;

for(k=0;k<48;k++)

{

P1=yu[k];

delay(300);

}

P1=0x00;

}

void main()

{

int n;

IT0=0;

EX0=1;

PX0=1;

IT1=0;

EX1=1;

PX1=0;

EA=1;

P1=0x00;

P2=0x00;

while(1)

{

for(n=0;n<17;n++)

{

P0=yu1[n];

delay(100);

}

}

c语言单片机外部中断程序,单片机外中断汇编语言和C语言程序相关推荐

  1. 一步步编写操作系统 69 汇编语言和c语言共同协作 70

    由于有了上一节的铺垫,本节的内容相对较少,这里给大家准备了两个小文件来实例演示汇编语言和c语言相互调用. 会两种不同语言的人,只是掌握了同一件事物的两种表达方式.人在学习一种新语言时,潜意识里是建立了 ...

  2. 软件工程:汇编语言和C语言在软件工程的应用,计算机学生必看!

    随着科学技术不断发展,软件工程在社会发展中取得了进一步发展,软件工程专业,也在各大学生根发芽,许多大学的专业教学上也取得了良好的进展.汇编语言与C语言作为两种计算机基础语言,在推动软件工程发展等方面具 ...

  3. 汇编语言属于C语言吧,汇编语言和c语言的区别是什么

    区别:汇编语言的效率高,对硬件的可操控性更强,体积小,不易维护,可移植性很差:c语言的效率比较低,硬件可操控性比较差,目标代码体积大,容易维护,可移植性很好. 汇编语言(Assembly Langua ...

  4. 一步步编写操作系统 43 汇编语言和c语言的理解

    也许有的同学喜欢用汇编语言来实现操作系统,觉得用汇编来写程序似乎更简单直接,可控性比较强,有种"一切尽在掌握"的赶脚.而用c语言实现操作系统这件事,虽然轻松很多,但似乎隐约感觉到有 ...

  5. 汇编语言和C语言编写程序各有什么优缺点,C语言和汇编语言在单片机开发中,各有什么优缺点?...

    您好,下面这个是我从论坛里面找出来的精华帖.你可以参考参考. C与汇编: C:经编译后,成汇编. 汇编:是自己"完成"了C的工作. C:是从通用化出发的,考虑了单片机的特点,极大地 ...

  6. php和java语言_JAVA语言和PHP语言的比较

    JAVA语言和PHP语言的比较 JAVA语言在服务器端开发的流行以及安卓客户端开发的流行,让他占据了大部分市场份额.在服务器端还有一个语言也较为流行,就是PHP.PHP语言由于简单易学,响应速度快,在 ...

  7. 中断:内中断(异常)与外中断(中断)

    文章目录 中断 一.中断的概念 1.中断的作用 2.中断机制的基本实现原理 3.中断的分类:内中断(异常)与外中断(中断) 二.外部中断 1.外中断的概念 外中断举例:时钟中断.I/O中断 2.中断响 ...

  8. java语言和c语言_java语言和c语言的区别

    java语言和c语言的区别 java语言和c语言作为编程的两大语言,它们之间存在什么样的区别呢?下面百分网小编就为大家讲一讲,希望对您有所帮助! C语言是一门通用计算机编程语言,应用广泛.C语言的设计 ...

  9. D语言和Go语言有前途吗?

    发信人: vimer (老来多忘事,惟不忘相思), 信区: Programming 标  题: [合集] D语言和Go语言有前途吗? (转载) 发信站: 水木社区 (Wed Dec 14 21:11: ...

  10. c语言和python和java_C语言和Python语言,那个更好?

    最近很多人问我:C语言和Python,哪个更好?实际上,并没有哪个好,哪个不好,它们都有自己的特点,因为,Python的底层逻辑是用C语言实现的,如果您想更深入的学习,那么建议先学习C语言,然后再学习 ...

最新文章

  1. linux下设置代理
  2. hadoop环境安装及简单Map-Reduce示例
  3. 关于 Service 设计初步(MSDN节选翻译)
  4. 用css3和ico图片实现火狐社区的分享图标
  5. linux中 目标不是目录,Linux 中的 Install命令
  6. feign三:覆写feign的默认配置及feign的日志
  7. linkin大话设计模式--命令模式
  8. cmos逻辑门传输延迟时间_MOS管以及简单CMOS逻辑门电路原理图解析
  9. 微信公众平台开发网页开发
  10. u盘pe启动盘怎么制作?
  11. C#调用Outlook发送邮件
  12. #2 – Rendering Tiers(WPF渲染级别)
  13. 主数据与数据中台有什么区别?
  14. 使用FFmepg进行视频转码、视频格式转换、图片提取等!
  15. IgH详解六、IgH命令行工具使用
  16. 知然算法【2】灰色模型GM(1,1)
  17. 计算机怎么不休眠,怎么设置电脑不休眠?
  18. 五一出游-徒步旅行主旋律
  19. 各类通信协议归纳整理(偏硬件)
  20. 天购免费购物新概念 电商新宠领前行

热门文章

  1. mac下Cornerstone显示日志问题 Cound not contact repository to read the latest log entries
  2. 软件测试面试中90%会遇到的问题:“你会搭建测试环境吗?”
  3. Git, Gitlab使用文档
  4. wget不是内部命令 windows_wget 不是内部或外部命令 - 卡饭网
  5. Google Earth Engine个人笔记:2 计算植被覆盖度
  6. 山东省第八届acm大赛 G题 (SDUT 3899)
  7. boost库中thread多线程中的thread_specific_ptr
  8. Python 实现 pdf转图片 和 图片转pdf
  9. EXCEL预览正常,打印却是空白的解决方法之一
  10. Kaggle竞赛销售预测(xgboost)