当前位置: 首页 > wzjs >正文

可做笔记的阅读网站做螺杆比较出名的网站

可做笔记的阅读网站,做螺杆比较出名的网站,济南好的seo,寮步网站建设1.主要区别 汇编语句和机器指令具有一一对应的特性。和机器指令相比,使用汇编语言编程更容易。汇编语言使用符号名表示操作码,还可以为内存地址分配符号名(标号),由汇编编译器(assembler)把它们翻译成机器指令&#x…

1.主要区别

汇编语句和机器指令具有一一对应的特性。和机器指令相比,使用汇编语言编程更容易。汇编语言使用符号名表示操作码,还可以为内存地址分配符号名(标号),由汇编编译器(assembler)把它们翻译成机器指令,实现对计算机的操控。

用汇编语言编程,可以使用目标计算机的所有指令,而高级语言程序没有这样的能力。在高级语言中,许多目标计算机的指令和寄存器是不能访问的,有些特性也是无法利用的。用于系统编程的语言,如C语言,则同时具有高级语言和汇编语言的特点,它使用高级语言的语法,但是又能使用只有汇编语言才能使用的特性。

汇编语言和高级语言的另一个重要的区别:汇编语言只能运行在指令系统相同的系列计算机上,而高级语言程序可以运行在各种不同的计算机上。对许多应用来说,这种软件的可移植性相当重要。

2. 解决问题比较

单片机控制8个发光二极管(LED),P0口做输出口,控制 从LED1到LED8依次点亮,每次点亮一个LED,如此循环。 电路如下图所示。

汇编源程序

通过汇编源程序,能看到机器级的执行过程,对理解计算机的运行有帮助。

C51程序一

#include<reg51.h>        //51单片机寄存器定义的头文件

#include <intrins.h>    //包含左移函数的头文件

void delayms(unsigned char );

void main()

{     

  P0=0xff;                   // 8个LED灯全部熄灭   

  P0= 0xfe;               //点亮LED1

  while(1)      

   {     

     delayms(250);     //调用LED灯亮灭延迟时间函数         

     P0 = _crol_(P0,1);      //循环左移1位,点亮下一个LED

   }

}

void delayms(unsigned char ms)       // 定义流水灯亮灭延迟函数

{  

   unsigned char i;     

   while(ms--)   

    {       

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

    }

}

主要通过调用左移一位的库函数_crol_(P0,1)实现流水灯。

C51程序二

#include <reg51.h>
char LED_state;
void LED_show();

void main()
{
    int i;
    LED_state=-1;
    while(1)
    {
    LED_show();
    for(i=0;i<30000;i++);
    }
}

void LED_show()
{
    if(LED_state>=7)
        LED_state=0;
    else
        LED_state++;
    P0=~(1<<LED_state);  
}
 主要把左移操作和取反操作相结合,实现流水灯。   

显然,使用C51隐藏了机器实现,使开发者侧重于问题的解决思路,开发效率高,可靠性更好,且易于推广和交流。

3. 过程

过程(procedure)是实现模块化和重用的重要机制。指把一部分程序独立出来作为一个单元,这个单元可以在多个地方被调用。

在汇编语言程序中,常用子程序(subroutine)代替过程,如上述汇编源程序中的延时子程序DELAY。在C中,过程通常称为函数,如上述C51程序一中的delayms(unsigned char )函数,C51程序二中的LED_show()函数。

当被调用的过程完成后,必须返回到调用程序的断点处。一般的方法是调用时把返回地址压入堆栈,当过程结束的时候,从栈顶弹出返回地址并送入程序计数器。

子程序的调用,汇编程序通过调用指令(call)和返回指令(ret)实现。C程序使用函数调用语句实现,表达力更强。


文章转载自:

http://SXtzCNe5.qhrLb.cn
http://jkTivZ3C.qhrLb.cn
http://robyO3uk.qhrLb.cn
http://nTg1hV3J.qhrLb.cn
http://EyiUJVxX.qhrLb.cn
http://gzwPrLAY.qhrLb.cn
http://f3eORPGD.qhrLb.cn
http://5YErMjmf.qhrLb.cn
http://fhCJYAT6.qhrLb.cn
http://5N61GNHP.qhrLb.cn
http://8sg3rWyL.qhrLb.cn
http://Ypomvg2H.qhrLb.cn
http://ySRT55cl.qhrLb.cn
http://Q1Nej45f.qhrLb.cn
http://6kcACDdb.qhrLb.cn
http://zNw4rfOV.qhrLb.cn
http://gBgPutU8.qhrLb.cn
http://a71lp4xa.qhrLb.cn
http://DLrW5a4G.qhrLb.cn
http://6uUOJDQm.qhrLb.cn
http://jz0GyHdA.qhrLb.cn
http://DGpKX98A.qhrLb.cn
http://t2Use72z.qhrLb.cn
http://N2kzD4vk.qhrLb.cn
http://jkI9kKgF.qhrLb.cn
http://U0moqVGz.qhrLb.cn
http://zYztQvsC.qhrLb.cn
http://JnYGBzGO.qhrLb.cn
http://7ROau6Qi.qhrLb.cn
http://8jfJvvlA.qhrLb.cn
http://www.dtcms.com/wzjs/619118.html

相关文章:

  • 塘下网站建设汕头论坛建站模板
  • 网站主持人制作东莞服务36招
  • 自己做的网站怎么设置关键词郑州seo技术服务
  • 图门市建设局网站wordpress多租户
  • 做旅游网站的数据怎么来百度秒收录
  • 定远建设小学投诉网站商标设计免费
  • 简单网站建设流程图网站开发没有完成 需要赔偿多少
  • 中国摄影师个人网站设计设计网站策划书
  • 所有代刷平台推广重庆seo俱乐部联系方式
  • dede网站logo怎么改汉川市建设局网站
  • 做网站背景图片要多大网站优化代码
  • 密云微网站建设seo技术专员招聘
  • 深圳市官网网站建设有了网站怎样做公众号
  • 网站开发要用多少钱装修网十大平台
  • 唐山网站建设400多少钱高端网站设计制
  • 还能用的wap网站单页网站制作 在线 支付
  • python 做网站速度开网站的宣传图片怎么做
  • 牡丹江商城网站建设wordpress要发表评论您必须先登录
  • 最经典的营销案例seo 能提高网站速度吗
  • 涪陵网站建设 优帮云茂名网站建设电话
  • 做的比较好的游戏网站网站性能容量的收集与分析怎么做
  • 什么网站可以做外贸做网站接口多少钱
  • 桥梁毕业设计代做网站全国网站制作前十名
  • 网站建设公司小江广告位网站建设
  • 用网站模板做网站用ps软件做ppt模板下载网站
  • 咨询聊城网站建设wordpress网站首页链接乱码
  • wordpress全站注明优帮云排名自动扣费
  • 公司网站建设方案模板学校网站建设规划书
  • 网站开发主管工作内容英文版网站建设策划方案
  • 鹤壁建设网站推广公司电话app建设网站公司