当前位置:首页 » 编程软件 » 汇编程序论文

汇编程序论文

发布时间: 2023-03-23 01:41:22

❶ plc论文范文

plc是一种数字运算操作的电子系统,专为在工业环境下应用而设计。下面是我为大家精心推荐的plc论文范文,希望能够对您有所帮助。

plc论文范文篇一

PLC概述及维护

摘要:针对在信号系统与外部接口设计中广泛使用的PLC,本文介绍了PLC的概况和使用中的常见问题处理。

Abstract: In view of the signaling system with exterior connection design in widespread used PLC, this article introced PLC’s survey and frequently malfunctions.

关键词:PLC, 接口,故障,维修,地铁,信号

Key words: PLC, Interface, Malfunction,Maintenance, Subway,Signaling

中图分类号: U231+.7 文献标识码:A文章编号:

一、背景及基本概念

1.1 背景

在信号系统悔悄宽中的设计中,越来越多的使用PLC作为内部及外部接口的元器件,而接口的问题一直是设备调试、维护中比较难于掌握的。所以作为工程人员就需要对PLC的工作原理,及常见的问题有一定的了解。

1.2 基本概念

1.2.1 定义

PLC即可编程控制器PROGRAMMABLE LOGIC CONTROLLER 的简称。国际电工委员会(IEC)颁布了对PLC的规定:可编程控制器是一种数字运算操作的电子系统,专为在工业环境下应用而设计。它采用可编程序的存贮器,用来在其内部存贮执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,并通过数字的、模拟的输入和输出,控制各种类型的机械或生产过程。可编程控器及其有关设备,都应按易于与工业控制系统形成一个整体,易于扩充其功能的原则设计。

PLC具有通用性强、使用方便、适应面广、可靠性高、抗干扰能力强、编程简单等特点。

1.2.2 PLC的结构及基本配置

一般讲,PLC分为箱体式和模块式两种。但它们的组成是相同的,对箱体式PLC,有一块CPU板、I/O板、显示面板、内存块、电源等,当然按CPU性能分成若干型号,并按I/O点数又有若干规格。对模块式PLC,有CPU模块、I/O模块、内存、电源模块、底板或机架。无任哪种结构类型的PLC,都属于总线式开放型结构,其I/O能力可按用户需要进行扩展与组合。PLC的基本结构框图如下:

图1

一、CPU:

PLC中的CPU是PLC的核心,起神经中枢的作用,每台PLC至少有一个CPU,它按PLC的系统程序赋予的功能接收并存贮用户程序和数据,用扫描的方式采集由现场输入装置送来的状态或数据,并存入规定的寄存器中,同时,诊断电源和PLC内部电路的工作状态和编程过程中的语法错误等。进入运行后,从用户程序存贮器中逐条读取指令,经分析后再按指令规定的任务产生相应的控制信号,去指挥有关的控制电路,

与通用计算机一样,主要由运算器、控制器、寄存器及实现它们之间联系的数据、控制及状态总线构成,还有外围芯片、总线接口及有关电路。它确定了进行控制的规模、工作速度、内存容量等。内存主要用于存储程序及数据,是PLC不可缺少的组成单元。

CPU模块的外部表现就是它的工作状态的种种显示、种种接口及设定或控制开关。一般讲,CPU模块总要有相应的状态指示灯,如电源显示、运行显示、故障显示等。箱体式PLC的主箱体也有这些显示。它的总线接口,用于接I/O范本或底板,有内存接口,用于安装内存,有外设口,用于接外部设备,有的还有通讯口,用于进行通讯。CPU模块上还有许多设定开碧亮关,用以对PLC作设定,如设定起始工作方式、内存运森区等。

二、I/O模块:

PLC的对外功能,主要是通过各种I/O接口模块与外界联系的,按I/O点数确定模块规格及数量,I/O模块可多可少,但其最大数受CPU所能管理的基本配置的能力,即受最大的底板或机架槽数限制。I/O模块集成了PLC的I/O电路,其输入缓存器反映输入信号状态,输出点反映输出锁存器状态。

三、电源模块:

有些PLC中的电源,是与CPU模块合二为一的,有些是分开的,其主要用途是为PLC各模块的集成电路提供工作电源。同时,有的还为输入电路提供24V的工作电源。电源以其输入类型有:交流电源,加的为交流220VAC或110VAC,直流电源,加的为直流电压,常用的为24V。

四、底板或机架:

大多数模块式PLC使用底板或机架,其作用是:电气上,实现各模块间的联系,使CPU能访问底板上的所有模块,机械上,实现各模块间的连接,使各模块构成一个整体。

1.2.3 PLC的通信及编程

PLC具有通信联网的功能,它使PLC与PLC 之间、PLC与上位计算机以及其它智能设备之间能够交换信息,形成一个统一的整体,实现分散集中控制。现在几乎所有的PLC新产品都有通信联网功能,它和计算机一样具有RS-232接口,通过双绞线、同轴电缆或光缆,可以在几公里甚至几十公里的范围内交换信息。

当然,PLC之间的通讯网络是各厂家专用的,PLC与计算机之间的通讯,一些生产厂家采用工业标准总线,并向标准通讯协议靠近,这将使不同机型的PLC之间、PLC与计算机之间可以方便地进行通讯与联网。

1.2.4 PLC编程

PLC的编程语言与一般计算机语言相比,具有明显的特点,它既不同于高级语言,也不同与一般的汇编语言,它既要满足易于编写,又要满足易于调试的要求。目前,还没有一种对各厂家产品都能兼容的编程语言。如三菱公司的产品有它自己的编程语言,OMRON公司的产品也有它自己的语言。但不管什么型号的PLC,其编程语言都具有以下特点:

1. 图形式指令结构:程序由图形方式表达,指令由不同的图形符号组成,易于理解和记忆。系统的软件开发者已把工业控制中所需的独立运算功能编制成象征性图形,用户根据自己的需要把这些图形进行组合,并填入适当的参数。在逻辑运算部分,几乎所有的厂家都采用类似于继电器控制电路的梯形图,很容易接受。如西门子公司还采用控制系统流程图来表示,它沿用二进制逻辑组件图形符号来表达控制关系,很直观易懂。较复杂的算术运算、定时计数等,一般也参照梯形图或逻辑组件图给予表示,虽然象征性不如逻辑运算部分,也受用户欢迎

2. 明确的变数常数:图形符相当于操作码,规定了运算功能,操作数由用户填人,如:K400,T120等。PLC中的变量和常数以及其取值范围有明确规定,由产品型号决定,可查阅产品目录手册。

3. 简化的程序结构:PLC的程序结构通常很简单,典型的为块式结构,不同块完成不同的功能,使程序的调试者对整个程序的控制功能和控制顺序有清晰的概念。

4. 简化应用软件生成过程:使用汇编语言和高级语言编写程序,要完成编辑、编译和连接三个过程,而使用编程语言,只需要编辑一个过程,其余由系统软件自动完成,整个编辑过程都在人机对话下进行的,不要求用户有高深的软件设计能力。

5. 强化调试手段:无论是汇编程序,还是高级语言程序调试,都是令编辑人员头疼的事,而PLC的程序调试提供了完备的条件,使用编程器,利用PLC和编程器上的按键、显示和内部编辑、调试、监控等,并在软件支持下,诊断和调试操作都很简单。

二、PLC维护

2.1 维护概述

一般各型PLC均设计成长期不间断的工作制。对于地铁维护人员来讲,是不需要更改PLC内部程序的。但是在调试期间就需要对相应动作进行修改。

2.2 查找故障的设备

PLC的指示灯及机内设备,有益于对PLC整个控制系统查找故障。编程器是主要的诊断工具,他能方便地连到PLC上面可以观察整个控制系统的状态。根据PLC厂家的不同编程器也有区别,有的是运行在PC上的软件,有的是一个专用的设备。

2.3 查找故障顺序

根据下列问题,并根据发现的合理动作逐个否定。一步一步地更换PLC中的各种模块,直到故障全部排除。所有主要的修正动作能通过更换模块来完成, 除了一把螺丝刀和一个万用电表外,并不需要特殊的工具。

1、PWR(电源)灯亮否?如果不亮,在采用交流电源的框架的电压输入端(98-162VAC或195-252VAC)检查电源电压;对于需要直流电压的 框架,测量+24VDC和0VDC端之间的直流电压,如果不是合适的AC或DC电源,则问题发生在PLC之外。如AC或DC电源电压正常,但PWR灯不亮,检查保险丝,如必要的话,就更换CPU框架。

2、PWR(电源)灯亮否?如果亮,检查显示出错的代码,对照出错代码表的代码定义,做相应的修正。

3、RUN(运行)灯亮否?如果不亮,检查编程器是不是处于PRG或LOAD位置,或者是不是程序出错。如RUN灯不亮,而编程器并没插上,或者编程器处于RUN方式 且没有显示出错的代码,则需要更换CPU模块。

4、BATT(电池)灯亮否?如果亮,则需要更换锂电池。由于BATT灯只是报警信号,即使电池电压过低,程序也可能尚没改变。更换电池以后, 检查程序或让PLC试运行。如果程序已有错,在完成系统编程初始化后,将录在磁带上的程序重新装入PLC。

在日常的维修活动中,可以根据故障统计来准备备品备件,并不需要准备整个PLC。掌握了故障判断方法后,可以进行针对性地更换,这样可以减少维修成本,增加维修效率。

三、总结

了解PLC的组成部分及工作原理,可以更加准确的对PLC进行故障判断,在系统设计和生产使用中要对该系统的设备消耗、元器件设备故障发生点有清楚的估计,可以减少安装调试、维修成本,延长PLC控制系统的寿命。

在信号设计过程中有过把系统改复杂的现象,如采用复杂的控制方式和设备来实现,本可以用简单装置来实现的控制,违背了经济、简单、实用的原则,并可能会增加故障率。另外我们在信号系统中大多使用PLC处理接口信息,所以在设计过程中要尽量将接口信息容易识别,这样在出现故障时,能够尽快判断故障的归属方,便于地铁的运营管理。

分析故障或处理故障时也要注意系统性,要综合的考虑系统的各个输入输出才能能准确地判断故障点。

plc论文范文篇二

浅析PLC控制技术

[摘要]PLC是Programmable Logic Controller的缩写,即可编程逻辑控制器。IEC对PLC的定义是:PLC是一种数字运算操作的电子系统,专为在工业环境下应用而设计。它采用可编程序的存贮器,用来在其内部存贮执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,并通过数字的、模拟的输入和输出,控制各种类型的机械或生产过程。

[关键词]PLC技术发展现状发展趋势

中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)1210064-01

一、PLC技术的概念

PLC即可编程控制器(Programmable logic Controller,是指以计算机技术为基础的新型工业控制装置。在1987年国际电工委员会(International

Electrical Committee)颁布的PLC标准草案中对PLC做了如下定义:“PLC是一种专门为在工业环境下应用而设计的数字运算操作的电子装置。它采用可以编制程序的存储器,用来在其内部存储执行逻辑运算、顺序运算、计时、计数和算术运算等操作的指令,并能通过数字式或模拟式的输入和输出,控制各种类型的机械或生产过程。PLC及其有关的外围设备都应该按易于与工业控制系统形成一个整体,易于扩展其功能的原则而设计。”

二、PLC技术的发展历史

1968年,通用汽车对外公开招标,寻求新的电气控制装置,1969年,美国数字设备公司制成的首台plc,1971年日本从美国引进了PLC技术加以消化,由日本公司研制成功了日本的第一台PLC。从70年代初开始,不到三十年时间里,PLC生产发展成了一个巨大的产业,据不完全统计,现在世界上生产PLC及其网络的厂家有二百多家,生产大约有400多个品种的PLC产品。其中在美国注册的厂超过100家,生产大约二百个品种;日本有60~70家PLC厂商,也生产200多个品种的PLC产品;在欧洲注册的也有几十家,生产几十个品种的PLC产品PLC产品的产量、销量及用量在所有工业控制装置中居首位,市场对其需求仍在稳步上升。进入二十世纪九十年代以来,全世界PLC年销售额以达百亿美元而且一直保持15%的年增长的势头。

三、我国PLC技术的发展现状

我国研究PLC技术起步较晚,但发展速度较快。中国电力科学研究院自1997年开始研究PLC技术,主要考虑PLC技术用于低压抄表系统,传输速率较低。1998年开发出样机,并通过了试验室功能测试,1999年在现场进行试运行,获得了产品登记许可。1999年5月开始进行PLC系统的研究开发工作。主要对我国低压配电网络的传输特性进行了测试,并对测试结果进行了数据处理和分析,基本取得了我国低压配电网传输特性和参数,为进行深入研究和系统开发提供依据。2000年开始引进国外的PLC芯片,研制了2Mbps的样机,2001年下半年在沈阳供电公司进行了小规模现场试验,实验效果良好,并于6月20日在沈阳通过验收。验收委员会通过现场检测认为,该实验从中国配电网的实际传播特性出发,对电力线通信技术的理论、实际应用和工程技术进行了开创性研究,在国内率先研制成功2Mbps和14Mbps高速电力线通信系统,建立了我国第一个电力线宽带接入实验网络;实现了自家庭至配电开关柜的高速电力线数据通信,并将办公自动化系统延伸至家庭。该实验的成功标志着我国已经全面掌握了高速电力线通信的核心技术,具备了研制生产这种技术实用化设备的能力。据悉,今年年底以前将建成200户的试验网络。

我国工业控制自动化的发展道路,大多是在引进成套设备的同时进行消化吸收,然后进行二次开发和应用。目前我国工业控制自动化技术、产业和应用都有了很大的发展,我国工业计算机系统行业已经形成。工业控制自动化技术正在向智能化、网络化和集成化方向发展。

四、PLC的未来发展趋势

1.功能向增强化和专业化地方向发展,针对不同行业的应用特点,开发出专业化的PLC产品,以此来提高产品的性能和降低产品的成本,提高产品的易用性和专业化水平。

2.规模向小型化和大型化的方向发展,小型化是指提高系统可靠性基础上,产品的体积越来越小,功能越来越强;大型化是指应用在工业过程控制领域较大的应用市场,应用的规模从几十点扩展到上千点,应用功能从单一的逻辑运算扩展几乎能满足所有的用户要求。

3.系统向标准化和开放化方向发展,以个人计算机为基础,在Windows平台上开发符合全新一体化开放体系结构的PLC。通过提供标准化和开放化的接口,可以很方便地将PLC接入其它系统。

五、PLC技术的特点

1.配套齐全,功能完善,适用性强:PLC发展到今天,可以用于各种规模的工业控制场合。除了逻辑处理功能以外,现代PLC多具有完善的数据运算能力,可用于各种数字控制领域。近年来PLC的功能单元大量涌现,使PLC渗透到了位置控制、温度控制,CNC等各种工业控制中。加上PLC通信能力的增强及人机界面技术的发展,使用PLC组成各种控制系统变得非常容易。

2.系统的设计、建造工作量小,维护方便,容易改造:PLC用存储逻辑代替接线逻辑,大大减少了控制设备外部的接线,使控制系统设计及建造周期大为缩短,同时维护变得容易起来。更重要的是可以使同一设备经过改变程序改变生产过程。

3.体积小,重量轻,能耗低:以超小型PLC为例,新近出产的品种底部尺寸小于100mm,重量小于150g,功耗仅数瓦。由于体积小很容易装入机械内部,是实现机电一体化的理想控制设备。

六、PLC应用中应注意的问题

PLC是专门为工业生产服务的控制装置,通常不需要采取什么措施,就可以直接在工业环境中使用。但是,当生产环境过于恶劣时,就不能保证plc的正常运行,因此在使用中应注意以下环境问题。

1.温度:PLC要求环境温度在0-55℃,安装时不能放在发热量大的元件下面,四周通风散热的空间应足够大,基本单元和扩展单元之间要有30mm以上间隔;开关柜上、下部应有通风的百叶窗,防止太阳光直接照射;如果周围环境超过55℃,要安装电风扇强迫通风。

2.湿度:为了保证PLC的绝缘性能,空气的相对湿度应小于85%(无凝露)。

3.震动:应使PLC远离强烈的震动源,防止振动频率为10-55hz的频繁或连续振动。当使用环境不可避免震动时,必须采取减震措施,如采用减震胶等。

4.空气:避免有腐蚀和易燃的气体,例如氯化氢、硫化氢等。对于空气中有较多粉尘或腐蚀性气体的环境,可将PLC安装在封闭性较好的控制室或控制柜中,并安装空气净化装置。

参考文献:

[1]钟肇新,可编程控制器原理与应用[M].广州:华南理工大学出版社,2000.

[2]储云峰,施耐德电气可编程序控制器原理及应用[M].北京:机械工业出版社,2006.

[3]高勤,电器及PLC控制技术[M].北京:高等教育出版社,2002.

❷ 论文集算不算汇编

算的。汇编一般指汇编程序。汇编程序是指把汇编语言书写的程序翻译成与之等价的机器语言程序的翻译程序。

❸ 论文:汇编语言的特点及应用领域

一方面,汇编语言指令是用一些具有相应含义的助忆符来表达的,所以,它要比机器语言容易掌握和运用,但另一方面,它要直接使用CPU的资源,相对高级程序设计语言来说,它又显得难掌握。

汇编语言程序归纳起来大概有以下几个主要特性。

1、与机器相关性

汇编语言指令是机器指令的一种符号表示,而不同类型的CPU有不同的机器指令系统,也就有不同的汇编语言,所以,汇编语言程序与机器有着密切的关系。

由于汇编语言程序与机器的相关性,所以,除了同系列、不同型号CPU之间的汇编语言程序有一定程度的可移植性之外,其它不同类型(如:小型机和微机等)CPU之间的汇编语言程序是无法移植的,也就是说,汇编语言程序的通用性和可移植性要比高级语言程序低。

2、执行的高效率

正因为汇编语言有“与机器相关性”的特性,程序员用汇编语言编写程序时,可充分发挥自己的聪明才智,对机器内部的各种资源进行合理的安排,让它们始终处于最佳的使用状态,这样做的最终效果就是:程序的执行代码短,执行速度快。

现在,高级语言的编译程序在进行寄存器分配和目标代码生成时,也都有一定程度的优化(在后续课程《编译原理》的有关章节会有详细介绍),但由于所使用的“优化策略”要适应各种不同的情况,所以,这些优化策略只能在宏观上,不可能在微观上、细节上进行优化。而用汇编语言编写程序几乎是程序员直接在写执行代码,程序员可以在程序的每个具体细节上进行优化,这也是汇编语言程序执行高效率的原因之一。

3、编写程序的复杂性

汇编语言是一种面向机器的语言,其汇编指令与机器指令基本上一一对应,所以,汇编指令也同机器指令一样具有功能单一、具体的特点。要想完成某件工作(如计算:A+B+C等),就必须安排CPU的每步工作(如:先计算A+B,再把C加到前者的结果上)。另外,在编写汇编语言程序时,还要考虑机器资源的限制、汇编指令的细节和限制等等。

由于汇编语言程序要安排运算的每一个细节,这就使得编写汇编语言程序比较繁琐、复杂。一个简单的计算公式或计算方法,也要用一系列汇编指令一步一步来实现。

4、调试的复杂性
在通常情况下,调试汇编语言程序要比调试高级语言程序困难,其主要原因有四:
汇编语言指令涉及到机器资源的细节,在调试过程中,要清楚每个资源的变化情况;
程序员在编写汇编语言程序时,为了提高资源的利用率,可以使用各种实现技巧,而这些技巧完全有可能破坏程序的可读性。这样,在调试过程中,除了要知道每条指令的执行功能,还要清楚它在整个解题过程中的作用;
高级语言程序几乎不显式地使用“转移语句”,但汇编语言程序要用到大量的、各类转移指令,这些跳转指令大大地增加了调试程序的难度。如果在汇编语言程序中也强调不使用“转移指令”,那么,汇编语言程序就会变成功能单调的顺序程序,这显然是不现实的;
调试工具落后,高级语言程序可以在源程序级进行符号跟踪,而汇编语言程序只能跟踪机器指令。不过,现在这方面也有所改善,CV(CodeView)、TD(Turbo Debug)等软件也可在源程序级进行符号跟踪了。

综上所说,汇编语言的特点明显,其诱人的优点直接导致其严重的缺点,其“与机器相关”和“执行的高效率”导致其可移植性差和调试难。所以,我们在选用汇编语言时要根据实际的应用环境,尽可能避免其缺点对整个应用系统的影响。

下面简单列举几个领域以示说明,但不要把它们绝对化。

1、适用的领域
要求执行效率高、反应快的领域,如:操作系统内核,工业控制,实时系统等;
系统性能的瓶颈,或频繁被使用子程序或程序段;
与硬件资源密切相关的软件开发,如:设备驱动程序等;
受存储容量限制的应用领域,如:家用电器的计算机控制功能等;
没有适当的高级语言开发环境。

2、不宜使用的领域
大型软件的整体开发;
没有特殊要求的一般应用系统的开发等。

你写论文可以围绕这几个方面写,最好举几个例子,能和实践结合最好了

❹ 求一篇关于介绍计算机汇编语言的论文 要求2000字左右

求一篇关于介绍计
算机汇编语言的

,EN ,ZH这个我们在行的

❺ 汇编语言论文写作的参考文献可以有哪些

1、与并御迟cpu等相应的 体系结构、指令集、汇绝李编语言程序设计手册(说明书、向拆晌导);
2、与你用的体系结构相应的接口技术;
3、所借鉴的有关论文;
.............

❻ 求一篇关于介绍计算机汇编语言的论文 要求2000字左右 发到[email protected]

计算机病毒及实例
第一节 计算机病毒历史

早在1949年,电脑的先驱者冯·诺伊曼在他的一篇文章《复杂自动装置的理论及组织的行为》中,即提出一种会自我繁殖的程序的可能----现在称为病毒,但没引起注意。

十年之后,在贝尔实验室中,这个概念在一个电子游戏中形成了。这个电子游戏叫“Core War”。

Core War

这个游戏由三个年轻的工程师完成,道格拉斯·麦耀莱、维特·维索斯基和罗伯特·莫里斯(后来那个编写蠕虫病毒的莫里斯的父亲)。

Core

War的玩如下:双方各编写一套程序,输入同一部电脑中。这两套程序在计算机内存中运行,它们相互追杀。有时它们回放下一些关卡,有时会带消帆停下来修复被对方破坏的指令。当它们被困时,可蠢雹以自己复制自己,逃离险境。因为它们都在电脑的内存(以前是用core做内存的)游走,因此叫Core

War。

这个游戏的特点,在于双方的程序进入电脑之后,玩游戏的人只能看着屏幕上显示的战况,而不能做任何更改,一直到某一方的程式被另一方的程式完全 [吃掉] 为止。

这个游戏分成好几种,麦耀莱所写的叫 [达尔文],包含了 [物竞天择 ,适者生存] 的意思 。

它的游戏规则跟以上所描述的最接近。游戏双方用汇编语言(Assembly Language)各写一套程式 ,叫有机体(organism)

。这两个有机体在电脑里争斗不休,直到一方把另一方杀掉而取代之 ,便算分出胜负。

另外有个叫爬行者 (Creeper)的程序,每一次把它读出时

,它便自己复制一个副本。此外,它也会从一部电脑[爬]到另一部和它相连的电脑。很快地电脑中原有资料便被这些爬行者挤掉了。爬行者的唯一生存目的是繁殖。

为了对付[爬行者],有人便写出了[收割者](Reaper)。它的唯一生存目的便是找到爬行者,把它们毁灭掉。当所有爬行者都被收割掉之后,收割者便执行程式中最后一项指令毁灭自己,从电脑中消失。

[侏儒](Dwarf)并没有达尔文等程式聪明。却可是个极端危险人物。它在内存中迈进,每到第五个[地址](address)便把那里所储存的东西变为零,这会使得原来的程序停止。

最奇特的就是一个叫[印普](Imp)的战争程式了 ,它只有一行指令:

MOV 01

这条指令把身处的地址中所载的[0]写(移)到下一个地址中,当印普展开行动之后,电脑中原有的每一行指令都被改为[MOV 01]。

[双子星](Germini)也相当有趣。它的作用只有一个:把自己复制,送到下一百个地址后,便抛弃掉[正本]。

从双子星衍生出一系列的程序。[牺牲者](Juggeraut)把自己复制后送到下十个地址之后,而[大雪人](Bigfoot)则把正本和复制品之间的地址定为某一个大质数。

电脑病毒的出现

一九八三年,科恩·汤普逊(Ken

Thompson)是当年一项杰出电脑奖得主。在颁奖典礼上,他作了一个演讲,不但公开地证实了电脑病毒的存在,而且还告诉所有听众怎样去写自己的病毒程序。

1983 年 11 月 3 日,弗雷德·科恩 (Fred Cohen) 博士研制出一种在运行过程中可以桥兆复制自身的破坏性程序,伦·艾德勒曼 (Len

Adleman) 将它命名为计算机病毒 (computer viruses),并在每周一次的计算机安全讨论会上正式提出,8 小时后专家们在 VAX11/750

计算机系统上运行,第一个病毒实验成功,一周后又获准进行 5 个实验的演示,从而在实验上验证了计算机病毒的存在。

一九八四年, [科学美国人]月刊(Scientific American)的专栏作家杜特尼(A. K. Dewdney)在五月号写了第一篇讨论[Core

War]的文章,并且只要寄上两块美金,任何读者都可以收到有关程序的纲领,在自己家中的电脑中开辟战场。

[病毒]一词的正式出现

在一九八五年三月份的[科学美国人]里 ,杜特尼再次讨论[Core War]和病毒。在文章的开头他便说:“当去年五月有关[Core War]的文章印出来时

,我并没有想过我所谈论的是那麽严重的题目”文中还第一次提到[病毒]这个名称。他提到说:“意大利的罗勃吐·歇鲁帝(Roberto

Cerruti)和马高·莫鲁顾帝(Marco Morocutti)发明了一种破坏软件的方法。他们想用病毒,而不是蠕虫,来使得苹果二号电脑受感染。

歇鲁弟写了一封信给杜特尼,信内说:“马高想写一个像[病毒]一样的程式,可以从一部苹

果电脑传染到另一部苹果电脑,使其受到感染。可是我们没法这样做,直到我想到这个病毒要先使软盘受到感染,而电脑只是媒介。这样,病毒就可以从张软盘传染到另一软盘了。”

1986 年初,在巴基斯坦的拉合尔 (Lahore),巴锡特 (Basit) 和阿姆杰德 (Amjad) 两兄弟经营着一家 IBM-PC

机及其兼容机的小商店。他们编写了Pakistan 病毒,即 Brain。在一年内流传到了世界各地。

1988 年 3 月 2 日,一种苹果机的病毒发作,这天受感染的苹果机停止工作,只显示“向所有苹果电脑的使用者宣布和平的信息”。以庆祝苹果机生日。

1988 年 11 月 2 日,美国六千多台计算机被病毒感染,造成 Internet

不能正常运行。这是一次非常典型的计算机病毒入侵计算机网络的事件,迫使美国政府立即作出反应,国防部成立了计算机应急行动小组。

这次事件中遭受攻击的包括 5 个计算机中心和 12 个地区结点,连接着政府、大学、研究所和拥有政府合同的 250,000

台计算机。这次病毒事件,计算机系统直接经济损失达 9600 万美元。

这个病毒程序设计者是罗伯特·莫里斯 (Robert T.Morris),当年 23 岁,是在康乃尔 (Cornell) 大学攻读学位的研究生。

罗伯特·莫里斯设计的病毒程序利用了系统存在的弱点。由于罗伯特·莫里斯成了入侵 ARPANET

网的最大的电子入侵者,而获准参加康乃尔大学的毕业设计,并获得哈佛大学 Aiken 中心超级用户的特权。他也因此被判 3 年缓刑,罚款 1 万美元,他还被命令进行

400 小时的新区服务。

1988 年底,在我国的国家统计部门发现小球病毒。

第二节 计算机病毒原理

计算机病毒定义

1994年2月18日,我国正式颁布实施了《中华人民共和国计算机信息系统安全保护条例》,在《条例》第二十八条中明确指出:“计算机病毒,是指编制或者在计算机程序中插入的破坏计算机功能或者毁坏数据,影响计算机使用,并能自我复制的一组计算机指令或者程序代码。”此定义具有法律性、权威性。(此节内容摘自《计算机安全管理与实用技术》一书)

计算机病毒原理

病毒的工作原理是什么呢?病毒是一个程序,一段人为编制的计算机程序代码。它通过想办法在正常程序运行之前运行,并处于特权级状态。这段程序代码一旦进入计算机并得以执行,对计算机的某些资源进行监视。它会搜寻其他符合其传染条件的程序或存储介质,确定目标后再将自身代码插入其中,达到自我繁殖的目的。只要一台计算机染毒,如不及时处理,那么病毒会在这台机子上迅速扩散,其中的大量文件(一般是可执行文件)会被感染。而被感染的文件又成了新的传染源,再与其他机器进行数据交换或通过网络接触,病毒会继续进行传染。

一般正常的程序是由用户调用,再由系统分配资源,完成用户交给的任务。其目的对用户是可见的、透明的。而病毒具有正常程序的一切特性,它隐藏在正常程序中,当用户调用正常程序时窃取到系统的控制权,先于正常程序执行,病毒的动作、目的对用户时未知的,是未经用户允许的。

病毒一般是具有很高编程技巧、短小精悍的程序。通常附在正常程序中或磁盘较隐蔽的地方,也有个别的以隐含文件形式出现。目的是不让用户发现它的存在。如果不经过代码分析,病毒程序与正常程序是不容易区别开来的。一般在没有防护措施的情况下,计算机病毒程序取得系统控制权后,可以在很短的时间里传染大量程序。而且受到传染后,计算机系统通常仍能正常运行,使用户不会感到任何异常。试想,如果病毒在传染到计算机上之后,机器马上无法正常运行,那么它本身便无法继续进行传染了。正是由于隐蔽性,计算机病毒得以在用户没有察觉的情况下扩散到上百万台计算机中。

大部分的病毒的代码之所以设计得非常短小,也是为了隐藏。病毒一般只有几百或1k字节,而PC机对DOS文件的存取速度可达每秒几百KB以上,所以病毒转瞬之间便可将这短短的几百字节附着到正常程序之中,使人非常不易被察觉。

大部分的病毒感染系统之后一般不会马上发作,它可长期隐藏在系统中,只有在满足其特定条件时才启动其表现(破坏)模块。只有这样它才可进行广泛地传播。如“PETER-2"在每年2月27日会提三个问题,答错后会将硬盘加密。着名的“黑色星期五”在逢13号的星期五发作。国内的“上海一号”会在每年三、六、九月的13日发作。当然,最令人难忘的便是26日发作的CIH。这些病毒在平时会隐藏得很好,只有在发作日才会露出本来面目。

任何病毒只要侵入系统,都会对系统及应用程序产生程度不同的影响。轻者会降低计算机工作效率,占用系统资源,重者可导致系统崩溃。由此特性可将病毒分为良性病毒与恶性病毒。良性病度可能只显示些画面或出点音乐、无聊的语句,或者根本没有任何破坏动作,但会占用系统资源。这类病毒较多,如:GENP、小球、W-BOOT等。恶性病毒则有明确得目的,或破坏数据、删除文件或加密磁盘、格式化磁盘,有的对数据造成不可挽回的破坏。这也反映出病毒编制者的险恶用心。

病毒分类

按传染方式分为:引导型病毒、文件型病毒和混合型病毒。

文件型病毒一般只传染磁盘上的可执行文件(COM,EXE)。在用户调用染毒的可执行文件时,病毒首先被运行,然后病毒驻留内存伺机传染其他文件或直接传染其他文件。其特点是附着于正常程序文件,成为程序文件的一个外壳或部件。这是较为常见的传染方式。

混合型病毒兼有以上两种病毒的特点,既染引导区又染文件,因此扩大了这种病毒的传染途径

随着计算机技术的发展,新的病毒也不断出现。我们在本章的最后一节将介绍宏病毒的机理和一个实例。

电脑病毒的新趋势

传统型病毒的一个特点, 就是一定有一个“寄主”程序,病毒就窝藏的这些程序里。最常见的就是一些可执行档,

像是副档名为.EXE及.COM的档案。但是由于微软的WORD愈来愈流行,且WORD所提供的宏命令功能又很强,

使用WORD宏命令写出来的病毒也愈来愈多于是就出现了以.DOC文件为“寄主”的也会宏病毒。

另外,不需要寄主的病毒也出现了,其实,它们寄生在“Internet”上。

如果Internet上的网页只是单纯用HTML写成的话, 那麽要传播病毒的机会可说是非常小了。但是呢, 为了让网页看起来更生动, 更漂亮,

许多语言也纷纷出笼, 其中最有名的就属JAVA和ActiveX了。从而,它们就成为新一代病毒的温床。JAVA和ActiveX的执行方式,是把程式码写在网页上,

当你连上这个网站时, 浏览器就把这些程式码读下来, 然后用使用者自己系统里的资源去执行它。这样,使用者就会在神不知鬼不觉的状态下,执行了一些来路不明的程序。

对于传统病毒来讲,病毒是寄生在“可执行的”程序代码中的。新的病毒的机理告诉我们,病毒本身是能执行的一段代码,但它们可以寄生在非系统可执行文档里。只是这些文档被一些应用软件所执行。

在德国汉堡一个名为Chaos Computer 的俱乐部,

有一个俱乐部成员完成一只新型态的病毒-----这只病毒可以找出Internet用户的私人银行资料, 还可以进入银行系统将资金转出, 不需要个人身份证明,

也不需要转帐密码。

当使用者在浏览全球网站时, 这个病毒会自动经由Active X 控制载入。Active X 控制可搜寻使用者计算机的硬盘, 来寻找Intuit

Quicken这个已有全球超过九百万使用者的知名个人理财软体。一旦发现Quicken的档案, 这个病毒就会下转帐指令。

计算机病毒防范

电脑病毒检测技术

一台计算机染上病毒之后,会有许多明显或不明显的特征。例如是文件的长度和日期忽然改变,系统执行速度下降或出现一些奇怪的信息或无故死机,或更为严重的硬盘已经被格式化。

我们常用的防毒软件是如何去发现它们的呢?他们就是利用所谓的病毒码(Virus Pattern)。病毒码其实可以想象成是犯人的指纹,

当防毒软件公司收集到一只新的病毒时, 他们就会从这个病毒程式中截取一小段独一无二而且足以表示这只病毒的二进制程序码 (Binary Code) ,

来当做扫毒程序辨认此病毒的依据, 而这段独一无二的二进制程序码就是所谓的病毒码。 在电脑中所有可以执行的程序(如 *.EXE,*.COM)

几乎都是由二进制程序码所组成, 也就是电脑的最基本语言-- 机器码。就连宏病毒在内, 虽然它只是包含在Word文件中的宏命令集,

可是它也是以二进制代码的方式存在于Word文件中。

反病毒软件常用下列技术来查找病毒的:

1.病毒码扫描法

将新发现的病毒加以分析后, 根据其特征, 编成病毒码, 加入资料库中。以后每当执行扫毒程序时, 便能立刻扫描目标文件, 并作病毒码比对,

即能侦测到是否有病毒。病毒码扫描法又快又有效率( 例如趋势科技的PC-cillin及Server Protect, 利用深层扫描技术,

在即时扫瞄各个或大或小的档案时,平均只需1/20秒的时间), 大多数防毒软件均采用这种方式, 但其缺点是无法侦测到未知的新病毒及以变种病毒。

2.加总比对法 (Check-sum)

根据每个程序的文件名称、大小、时间、日期及内容, 加总为一个检查码, 再将检查码附于程序的后面, 或是将所有检查码放在同一个资料库中,

再利用此Check-sum系统, 追踪并记录每个程序的检查码是否遭更改, 以判断是否中毒。这种技术可侦测到各式的病毒, 但最大的缺点就是误判断高,

且无法确认是哪种病毒感染的。

3.人工智能陷阱

人工智能陷阱是一种监测电脑行为的常驻式扫描技术。它将所有病毒所产生的行为归纳起来, 一旦发现内存的程式有任何不当的行为, 系统就会有所警觉,

并告知使用。这种技术的优点是执行速度快、手续简便, 且可以侦测到各式病毒;其缺点就是程序设计难, 且不容易考虑周全。不过在这千变万化的病毒世界中,

人工智能陷阱扫描技术是一个至少具有保全功能的新观点。

4.软件模拟扫描法

软件模拟扫描技术专门用来对付千面人病毒(Polymorphic /MutationVirus)。千面人病毒在每次传染时,

都以不同的随机乱数加密于每个中毒的档案中, 传统病毒码比对的方式根本就无法找到这种病毒。软件模拟技术则是成功地模拟CPU执行,

在其设计的DOS虚拟机器(Virtual Machine)下假执行病毒的变体引擎解码程序, 安全并确实地将多型体病毒解开,使其显露原本的面目, 再加以扫描。

5.VICE(Virus Instruction Code Emulation) - 先知扫描法

VICE先知扫描技术是继软件模拟后的一大技术上突破。既然软件模拟可以建立一个保护模式下的DOS虚拟机器, 模拟CPU动作并假执行程序以解开变体引擎病毒,

那麽应用类似的技术也可以用来分析一般程序检查可疑的病毒码。因此VICE将工程师用来判断程新是否有病毒码存在的方法, 分析归纳成专家系统知识库,

再利用软体工程的模拟技术(Software Emulation)假执行新的病毒, 则可分析出新病毒码对付以后的病毒。

6.即时I/O扫描(Realtime I/O Scan)

Realtime I/O Scan的目的在于即时地对数据的输入/输出动作做病毒码比对的动作, 希望能够在病毒尚未被执行之前, 就能够防堵下来。理论上,

这样的即时扫描技术会影响到数据的输入输出速度。但是使用实时扫描技术,文件传送进来之后,就等于扫过一次毒了。从整体上来讲,是没有什么差别的。

第三节 计算机病毒实例

CIH病毒检测

CIH病毒属文件型病毒,其别名有Win95.CIH、Spacefiller、Win32.CIH、PE_CIH,它主要感染Windows95/98下的可执行文件(PE格式,Portable

Executable Format),目前的版本不感染DOS以及WIN 3.X(NE格式,Windows and OS/2 Windows 3.1

execution File Format)下的可执行文件,并且在Win

NT中无效。其发展过程经历了v1.0,v1.1、v1.2、v1.3、v1.4总共5个版本,目前最流行的是v1.2版本。

CIH病毒v1.0版本:

最初的V1.0版本仅仅只有656字节,其雏形显得比较简单,与普通类型的病毒在结构上并无多大的改善,其最大的“卖点”是在于其是当时为数不多的、可感染Microsoft

Windows PE类可执行文件的病毒之一,被其感染的程序文件长度增加,此版本的CIH不具有破坏性。

CIH病毒v1.1版本:

发展到v1.1版本时,病毒长度为796字节,此版本的CIH病毒具有可判断Win NT软件的功能,一旦判断用户运行的是Win

NT,则不发生作用,进行自我隐藏,以避免产生错误提示信息,同时使用了更加优化的代码,以缩减其长度。此版本的CIH另外一个优秀点在于其可以利用WIN

PE类可执行文件中的“空隙”,将自身根据需要分裂成几个部分后,分别插入到PE类可执行文件中,这样做的优点是在感染大部分WINPE类文件时,不会导致文件长度增加。

CIH病毒v1.2版本:

发展到v1.2版本时,除了改正了一些v1.1版本的缺陷之外,同时增加了破坏用户硬盘以及用户主机BIOS程序的代码,这一改进,使其步入恶性病毒的行列,此版本的CIH病毒体长度为1003字节。

CIH病毒v1.3版本:

原先v1.2版本的CIH病毒最大的缺陷在于当其感染ZIP自解压包文件(ZIP self-extractors

file)时,将导致此ZIP压缩包在自解压时出现:

WinZip Self-Extractor header corrupt.

Possible cause: disk or file transfer error.

的错误警告信息。v1.3版本的CIH病毒显得比较仓促,其改进点便是针对以上缺陷的,它的改进方法是:一旦判断开启的文件是WinZip类的自解压程序,则不进行感染。同时,此版本的CIH病毒修改了发作时间。v1.3版本的CIH病毒长度为1010字节。

CIH病毒v1.4版本:

此版本的CIH病毒改进上上几个版本中的缺陷,不感染ZIP自解压包文件,同时修改了发作日期及病毒中的版权信息(版本信息被更改为:“CIH v1.4

TATUNG”,在以前版本中的相关信息为“CIH v1.x TTIT”),此版本的长度为1019字节。

CIH属恶性病毒,当其发作条件成熟时,将破坏硬盘数据,同时有可能破坏BIOS程序。其发作特征是:

1、以2048个扇区为单位,从硬盘主引导区开始依次往硬盘中写入垃圾数据,直到硬盘数据被全部破坏为止。最坏的情况下硬盘所有数据(含全部逻辑盘数据)均被破坏。

2、某些主板上的Flash Rom中的BIOS信息将被清除。

感染CIH病毒的特征:

由于流行的CIH病毒版本中,其标识版本号的信息使用的是明文,所以可以通过搜索可执行文件中的字符串来识别是否感染了CIH病毒,搜索的特征串为“CIH

v”或者是“CIH v1.”如果你想搜索更完全的特征字符串,可尝试“CIH v1.2 TTIT”、“CIH v1.3 TTIT”以及“CIH v1.4

TATUNG”,不要直接搜索“CIH”特征串,因为此特征串在很多的正常程序中也存在,例如程序中存在如下代码行:

inc bx

dec cx

dec ax

则它们的特征码正好是“CIH(0x43;0x49;0x48)”,容易产生误判。

另外一个判断方法是在Windows

PE文件中搜索IMAGE_NT_SIGNATURE字段,也就是0x00004550,其代表的识别字符为“PE00”,然后查看其前一个字节是否为0x00,如果是,则表示程序未受感染,如果为其他数值,则表示很可能已经感染了CIH病毒。

还有一个判断方法是先搜索IMAGE_NT_SIGNATURE字段----“PE00”,接着搜索其偏移0x28位置处的值是否为55 8D 44 24 F8

33 DB 64,如果是,则表示此程序已被感染。

适合高级用户使用的一个方法是直接搜索特征代码,并将其修改掉,方法是:先处理掉两个转跳点,即搜索:5E CC 56 8B F0 特征串以及5E CC FB

33 DB特征串,将这两个特征串中的CC改为90(nop),接着搜索 CD 20 53 00 01 00 83 C4 20 与 CD 20 67 00 40

00 特征字串,将其全部修改为90,即可(以上数值全部为16进制)。

另外一种方法是将原先的PE程序的正确入口点找回来,填入当前入口点即可(此处以一个被感染的CALC.EXE程序为例),具体方法为:先搜索IMAGE_NT_SIGNATURE字段----“PE00”,接着将距此点偏移0x28处的4个字节值,例如“A0

02 00 00”(0x000002A0),再由此偏移所指的位置(即0x02A0)找到数据“55 8D 44 24 F8 33 DB

64”,并由0X02A0加上0X005E得到0x02FE偏移,此偏移处的数据例如为“CB 21 40

00”(OXOO4021CB),将此值减去OX40000,将得数----“CB 21 00 00”

(OXOO0021CB)值放回到距“PE00”点偏移0x28的位置即可(此处为Windows PE格式程序的入口点,术语称为Program Entry

Point)。最后将“55 8D 44 24 F8 33 DB 64”全部填成“00”,使得我们容易判断病毒是否已经被杀除过。

CIH机理分析

其原理主要是使用Windows的VxD(虚拟设备驱动程序)编程方法。使用这一方法的目的是获取高的CPU权限,CIH病毒使用的方法是首先使用SIDT取得IDT

base address(中断描述符表基地址),然后把IDT的INT 3 的入口地址改为指向CIH自己的INT3程序入口部分,再利用自己产生一个INT

3指令运行至此CIH自身的INT

3入口程序出,这样CIH病毒就可以获得最高级别的权限(即权限0),接着病毒将检查DR0寄存器的值是否为0,用以判断先前是否有CIH病毒已经驻留。如DR0的值不为0,则表示CIH病毒程式已驻留,则此CIH副本将恢复原先的INT

3入口,然后正常退出(这一特点也可以被我们利用来欺骗CIH程序,以防止它驻留在内存中,但是应当防止其可能的后继派生版本)。如果判断DR0值为0,则CIH病毒将尝试进行驻留,其首先将当前EBX寄存器的值赋给DR0寄存器,以生成驻留标记,然后调用INT

20中断,使用VxD call Page Allocate系统调用,要求分配Windows系统内存(system

memory),Windows系统内存地址范围为C0000000h~FFFFFFFFh,它是用来存放所有的虚拟驱动程序的内存区域,如果程序想长期驻留在内存中,则必须申请到此区段内的内存,即申请到影射地址空间在C0000000h以上的

内存。

如果内存申请成功,则接着将从被感染文件中将原先分成多段的病毒代码收集起来,并进行组合后放到申请到的内存空间中,完成组合、放置过程后,CIH病毒将再次调用INT

3中断进入CIH病毒体的INT

3入口程序,接着调用INT20来完成调用一个IFSMgr_InstallFileSystemApiHook的子程序,用来在文件系统处理函数中挂接钩子,以截取文件调用的操作,接着修改IFSMgr_InstallFileSystemApiHook的入口,这样就完成了挂接钩子的工作,同时Windows默认的IFSMgr_Ring0_FileIO(InstallableFileSystemManager,IFSMgr)。服务程序的入口地址将被保留,以便于CIH病毒调用,这样,一旦出现要求开启文件的调用,则CIH将在第一时间截获此文件,并判断此文件是否为PE格式的可执行文件,如果是,则感染,如果不是,则放过去,将调用转接给正常的Windows

IFSMgr_IO服务程序。CIH不会重复多次地感染PE格式文件,同时可执行文件的只读属性是否有效,不影响感染过程,感染文件后,文件的日期与时间信息将保持不变。对于绝大多数的PE程序,其被感染后,程序的长度也将保持不变,CIH将会把自身分成多段,插入到程序的空域中。完成驻留工作后的CIH病毒将把原先的IDT中断表中的INT

3入口恢复成原样。

Flash ROM的破坏原理

PC机上常用来保存PC BIOS程序的Flash ROM包含两个电压接口,其中+12V一般用Boot Block的改写,Boot

Block为一特殊的区块,它主要用于保存一个最小的BIOS,用以启动最基本的系统之用,当Flash ROM中的其它区块内的数据被破坏时,只要Boot

Block内的程序还处于可用状态,则可以利用这一基本的PC

BIOS程序来启动一个最小化的系统,一般情况下,起码应当支持软盘的读写以及键盘的输入,这样我们就有机会使用软盘来重新构建整个Flash

ROM中的数据。一般的主板上均包含有一个专门的跳线,用来确定是否给此Flash ROM芯片提供+12V电压,只有我们需要修改Flash ROM中的Boot

Block区域内的数据时,才需要短接此跳线,以提供+12V电压。

另外一路电压为+5V电压,它可以用于维持芯片工作,同时为更新Flasm ROM中非Boot Block区域提供写入电压。

主板上的+12V跳线是为了防止更新Flash ROM中的Boot Block区域而设置的,如果想升级BIOS,同时此升级程序只需要更新Boot

Block区域以外的BIOS程序,则主板上的跳线根本没必要去跳,因为更新Boot

Block区域以外的数据并不需要+12V电压,这样,即使升级失败,我们也还存在着一个Boot

Block中的最基本BIOS可以使用,这样就可以使用软盘来恢复原先的BIOS数据(一般在升级的时候后,都提示用户保存当前的BIOS数据)。

某些芯片在+5V的电压下就可以进行改写,这些单5V的芯片便是造成BIOS数据被彻底破坏的原应。

Word宏病毒透视

Word宏病毒,是近年来被人们谈论得最多的一种电脑病毒。由于一些杀毒软件广告对此病毒的着力渲染,使得一些普通的用户对该病毒谈之色变。其实,在了解了Word宏病毒的编制、发作过程之后,即使是普通的电脑用户,不借助任何杀毒软件,也可以较好地对其进行防冶。

Word宏病毒,是用一种专门的Basic语言即Word Basic所编写的程序。与其它计算机病毒一样,它能对用户系统中的?

❼ 你好,能够帮我翻译一下这个汇编语言程序吗每一句都翻译一下哦。谢谢你了呢,论文答辩要用到的。

首先说明一下,汇编程序每一句都 翻译(应为注释),实在没有意义。

MAIN: MOV SP, #SP ;传送 SP,立即数SP
MOV 30H, #08H ;传送 30H,立即数08H
MOV P1, #FFH ;传送 接口1,立即数FFH
MOV P0, FFH ;传送 接口0,FFH
CLR TR0 ;清0 TR0
TO: MOV TMOD, #01H ;传送 TMOD,立即数01H
MOV TH0, #3CH ;传送 TH0,立即数3CH
MOV TL0, #0B0H ;传送 TL0,立即数0B0H
SETB TR0 ;位-置1 TR0
T1: MOV 30H, #50 ;传送 30H,立陆肆即数50
M8: CJNE 30H, #00H, M8 ;比较-不等转移 30H,立即数00H,
CJNE 31H, 08H, M7 ;比较-不等转移 31H,08H,
MOV P1, FFH ;传送 接口1,FFH
MOV P0, FFH ;传送 接口0,FFH
DEC 31H ;减1 31H
SJMP T1 ;短转移到 T1
M7: CJNE 31H, 07H, M6 ;比较-不等转移 31H,07H,
MOV P1, FFH ;传送 接口1,FFH
MOV P0, 00H ;传送 接口0,00H
DEC 31H ;减1 31H
SJMP T1 ;短转移到 T1
M6: CJNE 31H, 06H, M5 ;比较-不等转移 31H,06H,
MOV P1, 00H ;传送 接口1,00H
MOV P0, FFH ;传送 接口0,FFH
DEC 31H ;减1 31H
SJMP T1 ;短转移到 T1
M5: CJNE 31H, 05H, M4 ;比较-不等转移 31H,05H,
MOV P1, F0H ;传送 接口1,F0H
MOV P0, F0H ;传送 接口0,F0H
DEC 31H ;减1 31H
SJMP T1 ;短转移到 T1
M4: CJNE 31H, 04H, M3 ;比较-不等转移 31H,04H,
MOV P1, AAH ;传送 接或悉巧口1,AAH
MOV P0, AAH ;传送 接口0,AAH
DEC 31H ;减1 31H
SJMP T1 ;短转移到 T1
M3: CJNE 31H, 03H, M2 ;比较-不等转移 31H,03H,
MOV P1, CCH ;传送 接口1,CCH
MOV P0, CCH ;传送 接口0,CCH
DEC 31H ;减1 31H
SJMP T1 ;短转移到 T1
M2: CJNE 31H, 02H, M1 ;比较-不等转移 31H,02H,
MOV P1, 55H ;传送 接口1,55H
MOV P0, 55H ;传送 接口0,55H
DEC 31H ;减1 31H
LJMP T1 ;长转移到 T1
M1: CJNE 31H, 01H ;比较衫键-不等转移 31H,01H
MOV P1, 33H ;传送 接口1,33H
MOV P0, 33H ;传送 接口0,33H
MOV 31H, 08H ;传送 31H,08H
LJMP T1 ;长转移到 T1

*************************************** ;***************************************
;中断服务程序
*************************************** ;***************************************
INT1: PUSH 30H ;入栈 30H
PUSH 31H ;入栈 31H
CLR TR0 ;清0 TR0
MOV TMOD, #01H ;传送 TMOD,立即数01H
MOV TH0, #3CH ;传送 TH0,立即数3CH
MOV TL0, #0B0H ;传送 TL0,立即数0B0H
DEC 30H ;减1 30H
POP 31H ;出栈 31H
POP 30H ;出栈 30H,
SETB TR0 ;位-置1 TR0
RETI ;中断返回

❽ 汇编语言与高级语言混合编程研究(毕业论文)

想当年我做毕业设计通宵了100个晚上,容易吗???
你这个还是比较容易搞定的,如果你自己做应该20多天就可以出来!
如果你会PASCAL或C++,用C语言作桥梁,举一芹闹租个实际的例子,编几段程序,分析一下就完了。
提醒一下,这个一定要自己做,做一个毕业课题胜过得10万人民币。出生社会受益终身!
再提醒一下,如弯桐果你自己做好了,就拿这嫌兆个东东可以找到一份比你想象的高两倍的工作!

❾ 论文汇编和论文区别

论文汇编和论文区别为:性质不同、从属不同、质量不同。

一、性质不同

1、论文汇编:论文汇编是由某组织出版的书刊。

2、论文:论文是由某作者编纂的文章。

二、从属不同

1、论文汇编:论文汇编包含多篇论文。

2、论文:论文可被编入论信穗文汇编。

三、御昌质量不同

1、论文汇编:论文汇编选取的论文经过考核挑选,质镇坦扒量较高。

2、论文:论文包括学年论文、毕业论文、学位论文、科技论文、成果论文等,质量不固定。

❿ 高分求论文 “汇编语言发展史”

汇编语言发展树
http://www.123xz.net/article/article_32833_1.html
http://linbq.bokee.com/3584329.htmlTop
没有汇编语言发展历史这一说的,你只能说是CPU体系架构发展历史还差不多,因为一种体系架构就对应一种汇编语言,这是一一对应的,因此,IA-16体系架构就对应IA-16汇编语言,IA-32就有IA-32的汇编语言,安腾就有安腾的汇编语言,是跟着CPU来演变的。Top
液雹禅指令系统仅仅是CPU
的操作码而已,
就象你要操作一块集成电路要写控制字一样,只不过这个的控制自太多
所以闹尘就用助记附来表示,其实只要指令系统相同或者兼容,汇编语言就是一样的.
如:intel

AMD
CPU
Micro-architecture
是很不相同的,即使Pentium
4
的Netburst

Pentium
3的
P6
是有很大不同的但是指令肆信系统是兼容的,也就是用了同样的机器码
都属于IA-32指令体系.
而之所以产生Itanium
是因为实际上IA-32的指令系统中的可用的寄存器太少,要经过中间的寄存器重命名,而且这个体系的CPU
属于CISC

RISC
的结合,外围的CISC
用到
uops
(微操作码)
来操作
执行核心
而多数的RISC
计算机是用机器码直接操作的,省了中间过程,性能可以更多的提高
所以就产生了EPIC
体系结构
当然
就产生了新的指令系统
Itanium
就使用了大量的寄存器
几乎每种寄存器都是128个
,但是Itanium有两种操作环境,就是
IA32

IA-64(注意:intel
称自己的64位Pentium
是IA-32扩展64位
,这里的IA-64是指EPIC
的指令系统),也就是它是可以使用IA-32指令系统的,因为它有专门的解码和控制单元为IA-32服务.

热点内容
七七网源码 发布:2024-05-06 10:27:36 浏览:295
shell输入脚本 发布:2024-05-06 10:19:49 浏览:985
通达信自定义板块在哪个文件夹 发布:2024-05-06 09:56:37 浏览:104
在linux搭建mqtt服务器搭建 发布:2024-05-06 09:52:00 浏览:559
windowspython23 发布:2024-05-06 09:27:50 浏览:748
编程ug开初 发布:2024-05-06 09:27:48 浏览:561
小白源码论坛 发布:2024-05-06 09:24:56 浏览:140
android进程重启 发布:2024-05-06 09:15:09 浏览:98
ie浏览器设置默认ftp 发布:2024-05-06 09:14:03 浏览:886
迈腾尊贵中控配置怎么使用 发布:2024-05-06 09:13:28 浏览:657