免费论文查重: 大雅 万方 维普 turnitin paperpass

试议如何轻松学好汇编语言

最后更新时间:2024-01-16 作者:用户投稿原创标记本站原创 点赞:4570 浏览:15125
论文导读:
摘要: 汇编语言指令复杂,规定繁多,导致学生厌学,为了提高汇编语言程序设计的教学效果,本文从英语、C语言语法对比的角度,说明如何轻松学好汇编语言,以提高学习兴趣。
Abstract: Assembly language has complex instructions and many provisions which lead to the weariness of students. In order to improve the teaching effect of assembly language programming, this article explains how to easily learn assembly language from the comparative perspective of English and C language grammar in order to improve the interest of learning.
关键词: 单词;词法规则;语法规则;语法成分;语句
Key words: word;lexical rule;grammar rule;grammatical component;statement
1006-4311(2014)19-0193-02
1 绪论
作为最接近机器语言的编程语言,汇编语言可以称得上是最接近于计算机操作本质的语言。其直接面向硬件的特性,使得在使用汇编语言编程时,能够清楚感知计算机的运转过程和原理,充分认识应用程序和计算机硬件之间的联系与交互。相对于高级语言来说,汇编语言对编程者思维逻辑的锻炼表现尤为突出,对于形成软、硬兼备的编程知识体系具有举足轻重的作用,而且指令集合简约,指令操作直接。很多硬件设施的嵌入式编程使用的都是汇编语言,因为汇编语言更直接,更有效率。例如现在很多数码产品赖以存活的芯片、主板等,都包含了嵌入式程序,而这些程序中,汇编语言的使用是非常普遍和相当重要的。对于计算机专业语言类课程的学习来说,从汇编语言开始学习更符合循序渐进的学习原理。特别是在计算机技术专业的学习中,汇编语言具有十分重要甚至说不可代替的作用。因学生有英语、C语言学习的基础和习惯,故本文从英语、C语言语法对比的角如何轻松学好汇编语言相关范文由写论文的好帮手www.7ctime.com提供,转载请保留.度,说明如何轻松学好汇编语言,以便更好地由英语学习、C语言学习自然过渡到汇编语言学习。
2 汇编语言课程的特点
汇编语言是计算机能提供给用户的最快而又最有效的语言,同时能够利用计算机所有硬件特性并能直接制约硬件。所以高级语言简单、易学且开发效率高,而汇编语言复杂、难懂、开发效率低。优点:①用汇编语言所编程序时空效率高。由于汇编语言本质上就是机器语言,可直接、有效地制约计算机硬件,因而与高级语言相比,容易得到运转速度快、执行代码短、占用内存空间少的高时空效的目标程序。②用汇编语言能设计出高级语言无法实现的程序。正是由于与机器的密切相关性,使得汇编语言能充分利用计算机的硬件特性,编写出与硬件紧密相关而高级语言又无法实现的程序。缺点:①难学、难理解、难编程、难调试、难维护等。②汇编语言程序可移植性差,它是面向机器的语言,不同的机器CPU不一样,一个CPU一个指令系统,硬件CPU的不兼容导致程序移植困难。
3 英语与汇编语言的对比(表1)
例如以下程序:
Data segment ;data段开始
X dw 10,20,50,70,-90 ;data段正文
Data ends ;data段结束
Code segment ;code段开始
Assume cs:code,ds:data
Main: mov ax,data
Mov ds,ax
Mov bx,offset x
Mov cx,5 ;code段正文
Mov ax,0
L: Add ax,[bx]
Add bx,2
Loop l
MOV AH,4CH
Int 21h
Code ends ;code段结束
End main ;整个程序书写结束,从语句main开始执行
该程序的功能是求数据10,20,50,70,-90的累加和
4 单词的种类
4.1 常量(常数)单词 ①10进制整形常量。词法规则:以D结束(D可省略),由0-9构成 如 123D,456。②16进制整形常量。词法规则:以H结束,由0-9,A-F构成 如 123H,456H。③8进制整形常量。词法规则:以Q结束,由0-7构成 如 101Q,456Q。④2进制整形常量。词法规则:以B结束,由0-1构成 如 101B,110B。⑤字符型常量。词法规则:单引号括起来的字符,其值为其ASCII码如‘1’的值是41H,’AB’的值是4241H,’ABCD’的值是44434241H,字符顺次存放,其值是低位在低地址部分。
4.2 名字单词 词法规则:以字母或下划线开始,由字母,数字,下划线构成的串。如xyz,flag,名字可以是段名,子程序名,指令的名字,常量名,变量名,寄存器名等。
4.3 运算符单词 算术运算符:如+,-,*,/。伪指令运算符:如offset,seg,xor。
4.4 操作码单词 区分不同的操作(运算),含义必须硬记。如ADD(加法),SUB(减法),MUL(乘法),DIV(除法)。
5 语法成份——表达式
语法规则:由常量,运算符,括号,名字构成。如123+456+x,其中最常用的表达式有:①100:数据100。②[100]:100号单元,100不是数据,是地址,100号单元的内容是数据。③BX:BX单元。④[BX]:BX所指向的单元,并非BX单元。⑤10[BX]或书写成[10+BX]:BX所指向的单元,下10个单元。⑥[SI][BX]或书写成[SI+BX]:BX所指向的单元,下SI个单元。⑦10[SI][BX]或书写成10[SI+BX]或书写论文导读:2008.张全福.汇编语言程序设计实验教学改革与探索.教学研究,2005,25(10).詹林,刘向举.汇编语言程序设计课程教学策略的研究.中国科技信息,2005(12).上一页12
成[10+SI+BX]:BX所指向的单元,下SI个单元,再下10个单元。
6 语句格式
自然语言格式是:动词(做什么)宾语(对谁做)状语(怎么做)。汇编语言格式是:动词(做什么)宾语(对谁做),省掉状语(运算结果怎么办,隐含给出)。
语法规则:[名字][:]操作码目的操作数,源操作数;注解。表示做何种操作的代码称为操作码,参加操作的数称为操作数,操作数无非是常量,名字,表达式。存放结果的称为目的操作数,仅参加运算的数称为源操作数。运算后,目变源不变。
语义规则:目的操作数操作上源操作数,结果送到目的操作数(运算结果怎么办,隐含给出)。
如 ADD AX,BX表示AX的内容加上BX的内容送AX,(AX)+(BX)送AX。
7 汇编语言与C语言的比较(表2)
8 结束语
计算机由硬件软件两部分构成,汇编语言可直接在硬件层上编程序,高级语言有编译程序,该软件层遮盖了硬件层,使得用户看不到硬件,看到的只是编译程序的语法约定。故学好汇编语言,对于理解计算机内部运转机制及产品开发尤为重要。
参考文献:
[1]王成耀.80X86汇编语言程序设计(第2版)[M].北京:人民邮电出版社,2008.
[2]张全福.汇编语言程序设计实验教学改革与探索[J].教学研究,2005,25(10).
[3]詹林,刘向举.汇编语言程序设计课程教学策略的研究[J].中国科技信息,2005(12).