(完整)32位汇编语言程序设计17稿b

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

其他符号
program begin end procedure type
val
static var readonly const
……
如果想了解汇编语言专用符号和保留字的更 多的相关信息,请参考HLA手册。
2020/2/11
16wk.baidu.com
1.5 标识符
标识符可用作程序名、变量名、常量名、函 数名、过程名、标号等。汇编语言的标识符 必须以字母或下划线开始,后面可跟字母、 数字、下划线。由于受MASM的限制,标识符 的长度不能超过236个ASCII字符。汇编语言 的标识符区分大小写字母。 标识符不能与保留字同名。
2020/2/11
14
数据类型名称 int8 int16 int32 uns8 uns16 uns32 real32 real64 real80 byte word dword char string cset
qword array
lword boolean
2020/2/11
15
2020/2/11
11
1.4 保留字
保留字也称关键字,保留字包括 CPU中的寄 存器名,汇编语言的指令助记符,语句,数 据类型名称等。 汇编语言的保留字不区分大小写。
2020/2/11
12
CPU中的寄存器名 AL AH AX EAX BL BH BX EBX CL CH CX ECX DL DH DX EDX SI ESI DI EDI BP EBP SP ESP ST0 ST1 ST2 ST3 ST4 ST5 ST6 ST7
end 程序名;
2020/2/11
19
程序中的program,begin,end 是汇编语言的 保留字。程序名要按标识符取名。声明段用 来声明各种变量、常量为它们赋予初值;还 用来声明过程。begin和end之间是代码段。
汇编语言提供了输入输出标准库,为了使用 输入输出标准库,必须在程序开始用包含语 句把标准库的头文件"stdlib.hhf"包含到程序 中来。
2020/2/11
7
1.2 注释符
汇编语言的注释符分单行注释符和跨行注释 符。
单行释符 // 可以放在程序某行中任何位置,编译程序 忽略从 // 开始到行尾的所有内容。
跨行注释符 /* */ 编译程序忽略从 /* 开始到 */ 之间的所有内 容。
2020/2/11
8
例1:注释的用法 (1)跨行注释符 /* 下面的程序段对数组 实施快速排序算法 */ …… mov ( 365 , ecx); /* 给计数器赋初值 */
2020/2/11
17
例3:合法的标识符和非法的标识符
(1)合法的标识符
addtion big first last
a1
s1 small Small
(2)非法的标识符 %a1 5s AL s[1]
2020/2/11
18
1.6 汇编语言程序格式
program 程序名; <<各种数据段声明>>
begin 程序名; <<程序指令序列>> // 代码段
&& || <= >= <> != == := ..
2020/2/11
10
例2:专用符号举例 mov( &data , eax ); stdout.put( " 32位汇编语言", nl ); stdout.put("pi=",pi:10:3, nl ); stdout.put( $6f, nl ); stdout.put( % 10101010, nl );
2020/2/11
13
指令助记符和语句 ADD INC ADC SUB DEC CMP NEG SBB MUL IMUL INTMUL DIV IDIV MOD IMOD IF ELSE ENDIF WHILE ENDWHILE FOR ENDFOR FOREVER ENDFOR REPEAT UNTIL
32位汇编语言程序设计
计算机科学与信息工程学院
2020/2/11
赵建州
1
前言
《32位汇编语言程序设计》是计算机软件课 程。也是计算机专业学生的必修课程,与其
他程序设计语言相比,汇编语言对机器的硬
件层封装最少,在操作系统的控制下允许程
序员最大限度地直接访问计算机硬件。汇编
语言从语言的角度逼真地描述了微处理器的
结束放映 5
第一章 汇编语言单词
1.1 汇编语言字符集和单词 1.2 注释符 1.3 专用符号 1.4 保留字 1.5 标识符 1.6 汇编语言程序格式
2020/2/11
6
1.1 汇编语言字符集和单词
汇编语言采用ASCII码字符作为自己语 言的字符集。 汇编语言的单词由一个或 多个ASCII码字符组成,它们对于汇编 程序有预定的语法意义。汇编语言的单 词包括注释符、专用符号、保留字、标 识符等。
(2)单行注释符 mov ( 365 , ecx); // 给计数器赋初值
2020/2/11
9
1.3 专用符号
专用符号主要包括汇编语言的运算符、分 隔符、数制标识符。专用符号有一个字符 的也有两个字符的。下面是一个字符的专 用符号。 */+-()[] :;,. =&|^!@$% '"{ }
下面是两个字符的专用符号。
体系结构,从软件角度描述了计算机系统硬 件层的运行规则。不同的CPU体系有不同的 汇编语言。本课介绍的是Intel 80X86CPU系 列的32位汇编语言。
2020/2/11
2
在学习计算机专业其他课程时,会遇到一些该课程
不能解答的问题:常数为什么不能修改,数据为什 么要有数据类型,指针为什么也要有数据类型,为 什么C/C++语言中数组的下标从0 开始,为什么不 能用值传递参数或自动局部变量从函数带回信息, 函数的形参变量和自动局部变量放在内存的哪一部 分,它们为什么会随着函数的结束而消失, C/C++ 语言中为什么要区分整数运算和浮点数运算等等, 通过学习32位汇编语言程序设计,会帮助你理解许 多其他课程留下的问题。
2020/2/11
3
2020/2/11
第一章 汇编语言单词 第二章 CPU映像和机器数 第三章 内存数据映像 第四章 操作数寻址方式 第五章 输入输出函数 第六章 整型运算 第七章 整型控制结构
结束放映 4
第八章 浮点型运算 第九章 指针和字符串 第十章 数组和串 第十二章 过程
2020/2/11
相关文档
最新文档