安防监控知识
电气知识|高级语言程序与汇编语言程序
2016-05-28  浏览:47
安防之家讯:汇编语言的编写、调试比较复杂,不具有可移植性,因此,在软件开发中往往使用高级语言。但是,汇编语言又有着高级语言所不具有的优点:占有存储空间小,运行速度快,能直接控制硬件。因而经常是程序的大部分用高级语言编写,而在某些关键部分,对速度要求很高的部分,运行次数很多的部分,直接控制硬件的部分,则用汇编语言编写。这就提出了汇编语言与高级语言的连接问题。
 一、 BASIC程序与汇编语言的连接
1.USR(n函数),
(])用DATA语句存放汇编子程序的机器码。
(2)用DEF SEO语句定义汇编子程序机器码的装入段地址。
(3)用READ语句从DATA语句中读汇编子程序的机器码。
(4)用POKE函数,将汇编子程序的机器码进入指定的内存单元中。
(5)用call语句调用, 或用UsR函数调用。
2.CALL语句
(1)用DEF SEG语句定义汇编子程序机器码的装入段地址。
(2)用BLOAD语句装入原先存在磁盘内的 编子程序机器码文件。
(3)用call语句弱用。
  二、 C语言程序与汇编语言程序的连接
在用C语言编写的程序中,与汇编语言程序一样,可以进行细微地处理,因此在许多情况都没有必要与汇编语言程序相连接
C语言程序中使用汇编语言程序定义的变量和函数时,在C语言程序中应该用extern说明,在汇编语言程序中应该用PUBLIC说明。
汇编语言程序结束时应该用RET指令返回,而且由于采用堆栈来传送参数,因而返回时往往采用带参数的返回指令,以便跳过参数区。
组描述是用GROUP伪指令把几个段组合成一组,这些段具有共同的起始地址。这样就允许通过用同一段寄存器访问一组中的各段。
进.退栈操作是为了保存现场。另外,如果汇编语言程序中需要用到某些寄存器,则需将这些寄存器压入堆栈,待程序将要结束时,再退出堆栈。
参数传递包括两个方面,一个是从TURBO C语言程序向汇编子模块传递参数,另一个是从汇编语言向TURBO C调用程序返回参数。TURBO C程序向汇编语言程序的参数传递是通过栈操作进行的。先传递的参数被最后压入堆栈,即参数按从右到左的顺序被压入堆栈(这与C语言的版本有关)。
汇编语言程序中的结果返回给TURBO C主程序是通过AX和DX寄存器来完成的。安防之家专注于各种家居的安防,监控,防盗,安防监控,安防器材,安防设备的新闻资讯和O2O电商导购服务,敬请登陆安防之家:http://anfang.jc68.com/
更多»您可能感兴趣的文章:
更多»有关 监控 的产品:
  • 安防监控资讯
  • 发表评论 | 0评
  • 评论登陆
  • 移动社区 天花之家 木门之家 灯具之家 铁艺之家 幕墙之家 五金头条 楼梯头条 墙纸头条 壁纸头条 玻璃头条 老姚之家 灯饰之家 电气之家 全景头条 照明之家 防水之家 防盗之家 区快洞察 建材 枣庄建材 临沂建材 南昌建材 上饶建材 抚州建材 宜春建材 吉安建材 赣州建材 鹰潭建材 新余建材 九江建材 萍乡建材 景德镇陶瓷 石家庄建材 衡水建材 廊坊建材 沧州建材 承德建材 建材之家 企业之家 720全景
    (c)2015-2017 Bybc.cn SYSTEM All Rights Reserved