ImageVerifierCode 换一换
格式:DOC , 页数:19 ,大小:134.98KB ,
资源ID:8733719      下载积分:10 金币
验证码下载
登录下载
邮箱/手机:
图形码:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/8733719.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请。


权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4009-655-100;投诉/维权电话:18658249818。

注意事项

本文(汇编语言论文.doc)为本站上传会员【pc****0】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

汇编语言论文.doc

1、2 研究总结报告:你的论文题目 本科课程论文 Course Paper 课程名称 Course:IBM-PC汇编语言课程设计 课程性质 Course No:专业课 学 分 数 Credits:5 主讲教师 Instructor: 开设学院 College:巢湖学院 开设时间 Semester:2011-09-03 论文编号 Paper No: 撰写日期 Date: 2012-01-01 汇编的总结 Paper Title in English 姓名(计算机及信息工程学院 计算机科学与技术专业 2年级学号)

2、论文类型Paper Type: 研究总结 Summary of Focused Research 论及主题 Subject Covered: □ □ ■ □ □ 巢 湖 学 院 Paper No: 你的学号R Date: yyyy-mm-dd Page 19 of 19 研究总结报告:你的论文题目 汇编的总结 姓 名 (计算机及信息工程学院计算机科学与技术 专业 2年级学号) Email: @ 摘 要: 作为最基本的编程语言之一,汇

3、编语言虽然应用的范围不算很广,但重要性却勿庸置疑,因为它能够完成许多其它语言所无法完成的功能。就拿 Linux 内核来讲,虽然绝大部分代码是用 C 语言编写的,但仍然不可避免地在某些关键地方使用了汇编代码,其中主要是在 Linux 的启动部分。由于这部分代码与硬件的关系非常密切,即使是 C 语言也会有些力不从心,而汇编语言则能够很好扬长避短,最大限度地发挥硬件的性能。。 关键词: 编汇 应用 发展 汇编语言比机器语言易于读写、易于调试和修改,同时也具有机器语言执行速度快,占内存空间少等优点,但在编写复杂程序时具有明显的局限性,汇编语言依赖于具体的机型,不能通用,也不能

4、在不同机型之间移植。   是能完成一定任务的机器指令的集合。   常说汇编语言过时,是低级语言,并不是说汇编语言要被弃之,相反,汇编语言仍然是程序员必须了解的语言,在某些行业与领域,汇编是必不可少的,非它不可适用。只是,现在计算机最大的领域为IT软件,也是我们常说的 Windows编程,在熟练的程序员手里,使用汇编语言编写的程序,运行效率与性能比其它语言写的程序是成倍的优秀,但是代价是需要更长的时间来优化,如果对计算机原理及编程基础不扎实,实在是得不偿失,对比现在的软件开发,已经是市场化的软件行业,加上高级语言的优秀与跨 19 研究总结报告:你的论文题目 平台,一个公司不可以让一个团队使

5、用汇编语言来编写所有的东西,花上几倍甚至几十倍的时间,不如使用其它语言来完成,只要最终结果不比汇编语言编写的差太多,就能抢先一步完成,这是市场经济下的必然结果。    汇编语言(6张)但是,至今为止,还没有程序员敢断定汇编语言是不需要学的,一个不懂汇编语言的程序员,只是三流的程序员,这是大部分人的共识,同时,技术汇编语言(Assembly Language)是面向机器的程序设计语言精湛的汇编程序员,已经脱离软件开发,挤身于工业电子编程中,一个电子工程师,主要开发语言就是汇编,c语言使用只占极少部分,而电子开发工程师是千金难求,在一些工业公司,一个核心的电子工程师比其它任何职员待遇都高,对比起

6、来,一般电子工程师待遇是程序员的十倍以上。这种情况是因为现在学习汇编的人虽然也不少,但是真正能学到精通的却不多,它难学,难用,适用范围小,虽然简单,但是过于灵活,学习过高级语言的人去学习汇编比一开始学汇编的人难得多,但是学过汇编的人学习高级语言却很容易,简从繁易,繁从简难。   总之,汇编语言是程序员的必修语言。   目前国内最好的汇编网站是“AoGo汇编小站”。其站长aogo,就是一个在工业方面有所成就的工程师,有意者可多参考。   其次就是罗云彬的汇编站点:这个大概是国内建站时间最长的汇编站点,其编写的《Windows下汇编语言程序设计》一书。是站长十几年的经验的集合,不妨看看。   熟悉

7、指令,可以尝试破解,加强兴趣,参考看雪学院,国内最好的破解组织,其中看雪与众高手打造的破解书《加密 解密完全方案》非常有名。汇编语言是一种低级的程序语言可直接控制硬件。汇编语言是计算机最底层的语言,现在一般都用在硬件层,对硬件直接控制,其他的都用高级的语言编写了,因为汇编写程序容易出错,而且太过于复杂和长啦,虽然引入了其他的有类似高级语言的一些伪指令但是相比高级语言可以解决的问题都不用汇编啦。好像现在的计算机已经增加了对C++还是什么语言(反正就是高级语言)的支持啦,就是开集的引导程序已经不用汇编啦(好像只有为苹果apple系统制作的机子有,微软不知道为什么还没,不过不是技术问题,据说有其他目

8、的)。 作为最基本的编程语言之一,汇编语言虽然应用的范围不算很广,但重要性却勿庸置疑,因为它能够完成许多其它语言所无法完成的功能。就拿 Linux 内核来讲,虽然绝大部分代码是用 C 语言编写的,但仍然不可避免地在某些关键地方使用了汇编代码,其中主要是在 Linux 的启动部分。由于这部分代码与硬件的关系非常密切,即使是 C 语言也会有些力不从心,而汇编语言则能够很好扬长避短,最大限度地发挥硬件的性能。 按CPU不同的话基本每一种CPU都对应一种汇编,比如Intel出的CPU可以算一个系列的,这些CPU在推出新版CPU的时候会基本保持向下兼容,就是原来低级CPU的指令在高级的CPU

9、上也是一样的,所以说可以算作一类.另外还有单片机的汇编,单片机的指令和PC上CPU的指令是有出入的,所以另作一类 按操作系统不同的话可以分为windows下汇编,DOS汇编等,虽然可能在相同的CPU上运行不同的操作系统(比如windows下的dos窗口),但不同的操作系统的程序设计是不一样的,比如在DOS下你不可能去调用windows的API,在windows下也不可能去调用DOS的int 21H中断.另外某些单片机也有操作系统 大多数情况下 Linux 程序员不需要使用汇编语言,因为即便是硬件驱动这样的底层程序在 Linux 操作系统中也可以用完全用 C 语言来实现,再加上 GC

10、C 这一优秀的编译器目前已经能够对最终生成的代码进行很好的优化,的确有足够的理由让我们可以暂时将汇编语言抛在一边了。但实现情况是 Linux 程序员有时还是需要使用汇编,或者不得不使用汇编,理由很简单:精简、高效和 libc 无关性。假设要移植 Linux 到某一特定的嵌入式硬件环境下,首先必然面临如何减少系统大小、提高执行效率等问题,此时或许只有汇编语言能帮上忙了。 汇编语言直接同计算机的底层软件甚至硬件进行交互,它具有如下一些优点: 能够直接访问与硬件相关的存储器或 I/O 端口; 能够不受编译器的限制,对生成的二进制代码进行完全的控制; 能够对关键代码进行

11、更准确的控制,避免因线程共同访问或者硬件设备共享引起的死锁; 能够根据特定的应用对代码做最佳的优化,提高运行速度; 能够最大限度地发挥硬件的功能。 同时还应该认识到,汇编语言是一种层次非常低的语言,它仅仅高于直接手工编写二进制的机器指令码,因此不可避免地存在一些缺点: 编写的代码非常难懂,不好维护; 很容易产生 bug,难于调试; 只能针对特定的体系结构和处理器进行优化; 开发效率很低,时间长且单调。 汇编当然可以写网络程序啦,高级语言可以做的汇编可以做,高级语言不可以做的汇编也可以做。IP探测的软件一般都不用汇编,毕竟高级语

12、言可以解决,但是汇编写出来的没有高级语言自身的一些限制,如安全性,可能对权限有限制。 汇编可以应用于单片机,因为他们简单种类繁多,没有操作系统(开发代价大,而且不划算)故用汇编,不过其他的涉及电子的基本上都可以用汇编一方面,汇编语言指令是用一些具有相应含义的助忆符来表达的,所以,它要比机器语言容易掌握和运用,但另一方面,它要直接使用CPU的资源,相对高级程序设计语言来说,它又显得难掌握。 汇编语言程序归纳起来大概有以下几个主要特性。 1、与机器相关性 汇编语言指令是机器指令的一种符号表示,而不同类型的CPU有不同的机器指令系统,也就有不同的汇编语言,所以,汇编语言程

13、序与机器有着密切的关系。 由于汇编语言程序与机器的相关性,所以,除了同系列、不同型号CPU之间的汇编语言程序有一定程度的可移植性之外,其它不同类型(如:小型机和微机等)CPU之间的汇编语言程序是无法移植的,也就是说,汇编语言程序的通用性和可移植性要比高级语言程序低。 2、执行的高效率 正因为汇编语言有“与机器相关性”的特性,程序员用汇编语言编写程序时,可充分发挥自己的聪明才智,对机器内部的各种资源进行合理的安排,让它们始终处于最佳的使用状态,这样做的最终效果就是:程序的执行代码短,执行速度快。 现在,高级语言的编译程序在进行寄存器分配和目标代码生成时,也都有一定程度的优

14、化(在后续课程《编译原理》的有关章节会有详细介绍),但由于所使用的“优化策略”要适应各种不同的情况,所以,这些优化策略只能在宏观上,不可能在微观上、细节上进行优化。而用汇编语言编写程序几乎是程序员直接在写执行代码,程序员可以在程序的每个具体细节上进行优化,这也是汇编语言程序执行高效率的原因之一。 3、编写程序的复杂性 汇编语言是一种面向机器的语言,其汇编指令与机器指令基本上一一对应,所以,汇编指令也同机器指令一样具有功能单一、具体的特点。要想完成某件工作(如计算:A+B+C等),就必须安排CPU的每步工作(如:先计算A+B,再把C加到前者的结果上)。另外,在编写汇编语言程序时,还要

15、考虑机器资源的限制、汇编指令的细节和限制等等。 由于汇编语言程序要安排运算的每一个细节,这就使得编写汇编语言程序比较繁琐、复杂。一个简单的计算公式或计算方法,也要用一系列汇编指令一步一步来实现。 4、调试的复杂性 在通常情况下,调试汇编语言程序要比调试高级语言程序困难,其主要原因有四: 汇编语言指令涉及到机器资源的细节,在调试过程中,要清楚每个资源的变化情况; 程序员在编写汇编语言程序时,为了提高资源的利用率,可以使用各种实现技巧,而这些技巧完全有可能破坏程序的可读性。这样,在调试过程中,除了要知道每条指令的执行功能,还要清楚它在整个解题过程中的作用; 高级语言

16、程序几乎不显式地使用“转移语句”,但汇编语言程序要用到大量的、各类转移指令,这些跳转指令大大地增加了调试程序的难度。如果在汇编语言程序中也强调不使用“转移指令”,那么,汇编语言程序就会变成功能单调的顺序程序,这显然是不现实的; 调试工具落后,高级语言程序可以在源程序级进行符号跟踪,而汇编语言程序只能跟踪机器指令。不过,现在这方面也有所改善,CV(CodeView)、TD(Turbo Debug)等软件也可在源程序级进行符号跟踪了。 综上所说,汇编语言的特点明显,其诱人的优点直接导致其严重的缺点,其“与机器相关”和“执行的高效率”导致其可移植性差和调试难。所以,我们在选用汇编语言时

17、要根据实际的应用环境,尽可能避免其缺点对整个应用系统的影响。 下面简单列举几个领域以示说明,但不要把它们绝对化。 1、适用的领域 要求执行效率高、反应快的领域,如:操作系统内核,工业控制,实时系统等; 系统性能的瓶颈,或频繁被使用子程序或程序段; 与硬件资源密切相关的软件开发,如:设备驱动程序等; 受存储容量限制的应用领域,如:家用电器的计算机控制功能等; 没有适当的高级语言开发环境。 2、不宜使用的领域 大型软件的整体开发; 没有特殊要求的一般应用系统的开发等。 Paper Title in Engli

18、sh NAME Name-name (Student-No, College) Email:? Abstract: As one of the most basic programming language, assembly language, although the scope of application is not very wide, but the importance is undoubtedly, because it can do many other language can complete the function of. Take the Linux ke

19、rnel, although the vast majority of the code is written using C language, but still inevitably in certain key areas use assembly code, which is mainly in the Linux portion of the boot. Due to this part of the code and the hardware of the relationship is very close, even if is the C language also wil

20、l be there too, and assembly language can be very good foster strengths and circumvent weaknesses, to maximize the performance of hardware. . Key words: Compilation Application Development Assembly language machine language easy to read and write, is easy to debug and modify, whil

21、e also having a machine language is fast, occupy the memory space is little wait for an advantage, but in the complicated programming has obvious limitations, assembly language is dependent on the specific models, not general, not in different models of transplantation. Is to complete a certain task

22、 machine instruction set. Assembly language is often said, is the low-level language, is not to say that the assembly language to be abandoned, in contrast, assembly language is still the programmer must be aware of the language, and in some industries and fields, the compilation is essential, for i

23、t is not applicable. Just, now the largest field of computer for the IT software, and we often say the Windows programming, in skilled programmer 's hands, the use of assembly language programming, operation efficiency and performance than other languages are multiplied by the elite, but the price i

24、s take longer to optimize, if the computer principle and programming based on it is not solid, the loss outweighs the gain., compared with the current software development, is the market of the software industry, coupled with advanced language best cross platform, a company may not make a team using

25、 assembly language to write all the things, spend several times or even several times, as the use of other languages complete, as long as the end result than assembly language too much, will the first step, this is the inevitable result of market economy. Assembly language ( 6 ) but, so far, no pro

26、grammer bet assembly language is to learn, do not know a assembly language programmers, just three stream programmers, this is the most common, at the same time, technology of assembly language ( Assembly Language ) is a machine oriented language skills assembly language programmers, has been separa

27、ted from the software development, among the industrial electronic programming, an electronics engineer, mainly the development of language is the C language compilation, using only a small percent of, while the electronic development engineer is priceless, in some industries, a core electronic engi

28、neers than any other staff treatment is high, in contrast General Electronic Engineer, programmer treatment is more than ten times. This is because the present study the compilation of although many, but really can learn good not much however, it is difficult, difficult to use, suitable scope is lit

29、tle, although simple, but too much flexibility, learning advanced language to learn assembly than started the compilation of rare, but learned assembler people learn languages very easily, Jane from complexity, simplifying difficult. In short, the assembly language is a compulsory language programme

30、r. Currently the best compilation of site is " AoGo assembly station". The head of aogo, is an industrial achievement of engineer, those interested can refer to. Next is Luo Yunbin assembly site: This is probably the home station for the longest time assembly site, its write" Windows assembly langua

31、ge program design" in a book. The station is more than 10 years of experience in the collection, may have a look. Familiar with the instruction, can try to crack, to strengthen the interest, reference to see Snow College, the best domestic cracking group, which see the snow and the master to create

32、crack book" encryption and decryption program completely" is very famous. Assembly language is a low-level programming language can directly control the hardware. Assembly language is a computer at the bottom of the language, now generally used in the hardware layer, to direct hardware control, othe

33、rs use the advanced language, because the program is easy to make a mistake, but it is too complicated and long, although introduced other similar senior language of some pseudo instruction but compared with the advanced language it can solve the problem without compilation. Now it seems that comput

34、er has been added to the C + + or what language ( it is a high-level language ) support, is set to guide the process has no assembly. ( if only for the apple apple system making machine with Microsoft, don't know why he hasn't, but is not a technical problem, is said to have other purposes ). As on

35、e of the most basic programming language, assembly language, although the scope of application is not very wide, but the importance is undoubtedly, because it can do many other language can complete the function of. Take the Linux kernel, although the vast majority of the code is written using C lan

36、guage, but still inevitably in certain key areas use assembly code, which is mainly in the Linux portion of the boot. Due to this part of the code and the hardware of the relationship is very close, even if is the C language also will be there too, and assembly language can be very good foster stren

37、gths and circumvent weaknesses, to maximize the performance of hardware.According to CPU different essential each kind of CPU corresponds to an assembly, such as the Intel CPU can be counted as a series, the CPU in launching a new version of CPU will basically maintain downward compatibility, is the

38、 original grade CPU instruction in senior CPU is the same, so can be considered as a class. Another compilation, MCU instructions and PC CPU instruction is different, so a classAccording to the operating system to different words can be divided into windows compilation, DOS compilation, although pos

39、sible in the same CPU running on different operating system ( such as the windows DOS window ), but a different operating system program design is not the same as, for example, in DOS you won't be able to call the windows API, in the windows also impossible to call DOS int 21H interrupt. Moreover so

40、me chip also has operating system Most cases of Linux programmers do not need to use assembly language, because even the hardware drivers that the underlying program in the Linux operating system can also be used entirely in C language to achieve, plus GCC this excellent compiler has been able to u

41、ltimately generate the code of good optimization, there is sufficient reason for we can put aside the assembly language. But the implementation of Linux programmer is sometimes still need to use a compilation, or to use the compilation, the reason is very simple: streamlined, efficient and libc inde

42、pendence. Suppose you want to transplant Linux to a given hardware environment, first of all must face how to reduce the system size, improve execution efficiency and other issues, this is probably the only assembly language can help.Assembly language directly with the bottom layer of the computer s

43、oftware and hardware to interact, it has the following advantages:To be able to directly access the hardware related memory or I / O port;Without being affected by the compiler, to generate the binary code complete control;The key code to be more precise control, to avoid the common threads to acces

44、s or hardware device shared by a deadlock;According to specific application code to do the best optimization, improve the operating speed;To maximize the function of hardware.At the same time also should be aware of, the assembler language is a kind of very low levels of the language, it is higher t

45、han that of direct writing binary machine code instruction, it inevitably has some shortcomings:Code is very difficult to understand, not maintenance;It is easy to produce bug, difficult to debug;Only specific architecture and processor optimization;The development of efficiency is very low, long an

46、d boring.Assembly can certainly write network programs, high-level language can do assembly can be done, the high-level language can not do assembly can also do. IP detection software is generally not high-level language compilation, after all, can be solved, but a compilation of written language it

47、self without advanced some restrictions, such as security, may have on the authority restriction.Assembly can be applied to SCM, because of their simple variety, no operating system ( the price of development of large, but not worthwhile ) the assembly, but the other relates to electron basically ca

48、n be compiled on one hand, assembly language instruction is used with some corresponding meaning mnemonic symbols to express, therefore, it should be easy to master and use than machine language, but on the other hand, it is to directly use the CPU resources, relatively advanced programming language

49、 it is difficult to master.Assembly language program is summed up about the following main characteristics.In 1, and machine correlationAssembly language instruction is a kind of symbolic machine instruction, and different types of CPU have different machine instruction system, also have different assembly language assembly language program, therefore, is closely related with the machine.As the assembly language program and machine correlation, so, in addition to the series, various models of CPU between assembly language procedures have a certain degree of portability, other different

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服