汇编语言考试要点
汇编语言复习重点(王爽)
汇编语言(教材王爽)期末考试复习:考试题型:选择、填空、程序分析、编程题一、重点复习课本的检测点1.1-3.2与课后实验1-14:二、需要掌握的指令见后面附录三、汇编语言主要知识点:寄存器与存储器1. 寄存器功能. 寄存器的一般用途和专用用途. CS:IP 控制程序执行流程. SS:SP 提供堆栈栈顶单元地址. DS:BX(SI,DI) 提供数据段内单元地址. SS:BP 提供堆栈内单元地址. ES:BX(SI,DI) 提供附加段内单元地址. AX,CX,BX和CX寄存器多用于运算和暂存中间计算结果,但又专用于某些指令(查阅指令表)。
. PSW程序状态字寄存器只能通过专用指令(LAHF, SAHF)和堆栈(PUSHF,POPF)进行存取。
2. 存储器分段管理. 解决了16位寄存器构成20位地址的问题. 便于程序重定位. 20位物理地址=段地址 * 16 + 偏移地址. 程序分段组织: 一般由代码段,堆栈段,数据段和附加段组成,不设置堆栈段时则使用系统内部的堆栈。
3. 堆栈. 堆栈是一种先进后出的数据结构 , 数据的存取在栈顶进行 , 数据入栈使堆栈向地址减小的方向扩展。
. 堆栈常用于保存子程序调用和中断响应时的断点以及暂存数据或中间计算结果。
. 堆栈总是以字为单位存取指令系统与寻址方式1. 指令系统. 计算机提供给用户使用的机器指令集称为指令系统,大多数指令为双操作数指令。
执行指令后,一般源操作数不变,目的操作数被计算结果替代。
. 机器指令由CPU执行,完成某种运算或操作,8086/8088指令系统中的指令分为6类: 数据传送,算术运算,逻辑运算,串操作,控制转移和处理机控制。
2. 寻址方式. 寻址方式确定执行指令时获得操作数地址的方法. 分为与数据有关的寻址方式(7种)和与转移地址有关的寻址方式(4)种。
. 与数据有关的寻址方式的一般用途:(1) 立即数寻址方式--将常量赋给寄存器或存储单元(2) 直接寻址方式--存取单个变量(直接给出地址值或变量名)(3) 寄存器寻址方式--访问寄存器的速度快于访问存储单元的速度(4) 寄存器间接寻址方式--访问数组元素(5) 变址寻址方式(6) 基址变址寻址方式课本P164(7) 相对基址变址寻址方式(5),(6),(7)都便于处理数组元素. 与数据有关的寻址方式中,提供地址的寄存器只能是BX,SI,DI或BP. 与转移地址有关的寻址方式的一般用途:(1) 段内直接寻址--段内直接转移或子程序调用(2) 段内间接寻址--段内间接转移或子程序调用(3) 段间直接寻址--段间直接转移或子程序调用(4) 段间间接寻址--段间间接转移或子程序调用汇编程序和汇编语言1. 汇编程序. 汇编程序是将汇编语言源程序翻译成二进制代码程序的语言处理程序,翻译的过程称为汇编。
汇编语言期末复习要点
主要复习知识点
1 机器语言、汇编语言、高级语言,汇编与连接程序的基本原理,标识符,debug中数据的进制数据类型循环的三大要素 dos
2 寄存器以及寄存器的位数,数据寄存器,地址寄存器,IP指针寄存器,标志寄存器,地址总线,段或者缓冲区中指定单元的物理地址与偏移地址,以及寻址空间,内存分段的原理,各段的最大值,各段如何与相应的段寄存器建立对应关系
3 堆栈的栈底栈顶以及入栈时数据的大小、栈顶的移动方向
5 变量标号的三种属性以及它们的运算符,变量的类型转换要用到的运算符,符号扩展的具体操作。
6系统的常用功能调用,2 9 10 号功能调用
7 子程序的类型宏定义中局部标号的展开
8 中断向量以及中断向量表在内存中占有的空间的大小
9 双字变量的加减运算,移位运算,乘法与除法指令中乘数与被乘数各自用到的寄存器
10 输入输出指令,输入输出端口地址空间的大小
11 七种寻址方式,物理地址的计算以及目的操作数的计算,指令的对错
12 变量在内存中占用的字节单元数,以及单元中的值(根据数据类型确定),存储变量在内存中占用存储空间的示意图
13 宏程序的展开
14 流程图以及完整的源程序,四则混合运算,尤其要注意双精度数的加减运算以及大小的判断
15 循环程序与子程序的设计
16 比较指令与跳转指令在程序设计中的运用。
汇编语言复习重点总结版
1.通用数据传送指令MOV——传送指令指令格式:MOV DST,SRC;(DST)←(SRC)。
DST表示目的操作数, SRC表示源操作数说明:①.DST为除CS外的各寄存器寻址方式或任意存储器寻址方式。
SRC为任意数据寻址方式。
②.DST、SRC不能同时为存储器寻址方式,也不能同时为段寄存器寻址方式,而且在DST为段寄存器时,SRC不能为立即数。
③.MOV指令不影响标志位。
2.地址传送指令(1).LEA——有效地址(EA)送寄存器指令指令格式:LEA REG,SRC;(REG)←SRC说明:①.指令把源操作数(只能是存储器寻址方式)指定的有效地址送到指令指定的16位或32位寄存器(REG)中(但不能是段寄存器)。
②.LEA指令不影响标志位。
3.加法指令(1).ADD——加法指令指令格式:ADD DST,SRC;(DST)←(DST)+( SRC)4.减法指令(1).SUB——减法指令指令格式:SUB DST,SRC;(DST)←(DST) - (SRC)(2).SBB——带借位减法指令指令格式:SBB DST,SRC ;(DST)←(DST) - (SRC) - CF5.除法指令(1).DIV——无符号数除法指令指令格式:DIV SRC;字节操作:(AL)←(AX)/(SRC),(AH)←(AX)%(SRC)字操作:(AX)←(DX,AX)/(SRC),(DX)←(DX,AX)%(SRC)双字操作:(EAX)←(EDX,EAX)/(SRC),(EDX)←(EDX,EAX)%(SRC)6.逻辑运算指令:可以对双字、字或字节执行按位的逻辑运算。
(1).AND——逻辑与指令指令格式:AND DST,SRC;(DST)←(DST)∧(SRC)(2).OR——逻辑或指令指令格式:OR DST,SRC;(DST)←(DST)∨(SRC)(3).XOR——逻辑异或指令指令格式:XOR DST,SRC;(DST)←(DST)⊕(SRC)(4).PUSH——进栈指令指令格式:PUSH SRC;16位指令:(SP)←(SP) –2 ((SP)+1,(SP))←(SRC)32位指令:(ESP)←(ESP) –4 ((ESP)+3, (ESP)+2, (ESP)+1,(ESP))←(SRC)说明:①.堆栈:计算机开辟的以“后进先出”方式工作的存储区。
汇编语言期末复习要点
编译程序根据各变量的排列顺序和所占用的字节数,
计算出各变量的偏移量,以直接寻址方式或作中所有其他位置的该
变量符号。
8086汇编语言程序设计
18
3. 其他伪指令 ORG 、$:从哪里开始编译和编译到哪里了(偏移量) SEG、OFFSET 、TYPE: ——返回段基值、偏移量和变量类型
存器带有各种“附加”功能,这些“附加”功能是通
过机器指令的执行来实现的。
8086汇编语言程序设计
4
3. 8086/8088 CPU 的寄存器
8086/8088 CPU 的内部结构
8086汇编语言程序设计 5
三、存储器寻址方式及堆栈
1. 字节单元定位和物理地址
内存
地址 译码 逻辑 CPU 地址总线 数据总线
⑥ 基址变址寻址:xchg ax,[bx+si]
⑦ 相对基址变址寻址:push var[bx+si]
8086汇编语言程序设计 9
6. 堆栈
① 堆栈的“生成”和空栈的状态:
—— SP 的初值和堆栈容量、栈顶、栈底的关系; ② PUSH 和 POP 的行为方式: —— 栈指针 SP 的变化和数据入、出栈; ③ PUSHF 和 POPF 的默认操作数:标志寄存器;
④ 移位及循环移位类 ⑥ 标志位操作指令
② 8086 instructions
3. 掌握用 debug 学习、研究指令的方法
8086汇编语言程序设计
11
4. 特别提示:
① 目标操作数不能为立即数;
② 除了串操作指令外,双操作数不能同为存储器操作数; ③ 段寄存器只能: mov ax,ds mov ds,ax push ds pop ds
① 寄存器寻址:xor al,al
汇编语言复习重点
Ch1 汇编语言基础知识1.什么是汇编语言?2.汇编语言与机器语言的区别3.学习汇编语言的意义4.码制:不同进制、原码、反码、补码、BCD码表示,压缩BCD码Ch2 微型计算机体系结构1.8086是16位微处理器,它有16根数据线和20根地址线,寻址空间1MB。
2.8086中设置了一个6字节的指令预取队列,它的意义如何?3.8086分为EU和BIU两个部分。
说明它们的功能、作用和相互关系。
4.8086中有4个寄存器可以拆分为两个8位寄存器独立使用。
是那些寄存器?5.说明8086堆栈的特点。
指令指针寄存器IP、堆栈指针SP………6.指令对标志寄存器FLAGS的影响。
7.在8086中,当一个字存入存储器时,占有连续的两个字节空间。
存放时,低位字节存入低地址,高位字节存入高地址。
8.8086是采用存储器分段管理方式来解决寻址问题的。
即将1MB地址空间分为若干个逻辑段,段的大小按实际需要确定,最大为64KB。
9.8086对于1MB的物理存储空间,每一个存储单元都有一个20位的物理地址10.8086是采用存储器分段管理方式来解决寻址问题,指令中采用逻辑地址形式,逻辑地址表示格式为:段地址:偏移地址11.逻辑地址“段地址:偏移地址”转换为对应的物理地址的方法。
Ch3 指令系统1.在一般情况下,机器指令应包含两个部分内容,其一般格式为:操作码操作数。
2.什么是寻址方式?8086有哪些寻址方式?3.重点指令。
Ch4 伪指令与汇编语言程序结构设计1.汇编语言源程序由若干条语句组成,其语句分为两类:指令性语句和指示性语句。
2.合法的名字。
3.数据定义伪指令开始。
DB、DW、DUP等。
4.段定义Ch7 输入输出程序设计1. 接口与外设之间的信息。
2. I/O接口的功能。
3. 接口的基本组成。
4. 输入输出的控制方式的概念:无条件传送、查询式传送、中断传送。
5. 中断的基本概念、优点。
6. 什么是中断向量表、特点。
Ch8 高级汇编技术1. 什么是宏。
汇编语言考试复习资料
汇编语⾔考试复习资料汇编语⾔期末复习资料整理第⼆章1、寄存器组(1)通⽤寄存器数据寄存器EAX(32位) AX(16位) AH(8位)(⾼位) AL(8位)(低位)累加器EBX(32位) BX(16位) BH(8位)(⾼位) BL(8位)(低位)基址变址ECX(32位) CX(16位) CH(8位)(⾼位)CL(8位)(低位)计数器EDX(32位) DX(16位) DH(8位)(⾼位) DL(8位)(低位)数据指针或变址寄存器ESP(32位) SP(16位)堆栈指针寄存器EBP(32位) BP(16位)基址指针寄存器EDI(32位) DI(16位)⽬的变址寄存器ESI(32位) SI(16位)源变址寄存器(2)专⽤寄存器EIP(32位) IP(16位)指令指针寄存器EFLAGS(32位) FLAGS(16位)标志寄存器ESP (32位) SP(16位)堆栈指针寄存器2、标志位的符号表⽰、3、段寄存器CS(16位)代码段 DS(16位)数据段SS(16位)堆栈段 ES(16位)附加段4、段寄存器和相应存放偏移地址的寄存器之间的默认组合第三章1、七种寻址⽅式(举例)⽴即寻 MOV AX,3069H寄存器寻 MOV AL,BH在内存中的五种寻址直接寻 MOV AX,[2000H]寄存器间接寻 MOV AX,[BX]寄存器相对寻 MOV AX,COUNT[SI] 或者 MOV AX,[SI+COUNT](不推荐) 基址变址寻址 MOV AX,[BP][DI]相对基址变址寻址 MOV AX,MASK[BX][SI]2、指令系统I.数据传送指令(1)通⽤数据传送指令MOV 传送MOVSX 带符号扩展传送⽤源操作数的符号位来填充⽬的操作数的⾼位数据位。
例:MOVSX EAX,CL把CL寄存器中的8位数,符号扩展为32位数,送到EAX寄存器中。
MOVZX 带零扩展传送恒⽤0来填充⽬的操作数的⾼位数据位例:MOVZX DX,AL把AL寄存器中的8位数,零扩展成16位数,送到DX寄存器中。
汇编语言考试要点
汇编语言考试要点1、汇编语言的定义与特点定义:汇编语言是面向机器的语言,是利用计算机所有硬件特性并能直接控制硬件的语言特点:汇编语言是一种采用助记符表示的程序设计语言,它的指令和机器语言的指令在很大程度上是一一对应的,其指令格式及语法、语义等和机器语言也基本一致。
犹豫汇编语言使用一些标示指令操作的英文单词缩写来代替二进制序列,因此便于程序员记忆和编程。
2、80x86微处理器的组成8086/8088微处理器在内部结构上划分成两个功能模块,即总线接口单元(BIU )和执行单元(EU )2、通用寄存器AX :累加器,乘除运算指令规定其中一个操作数必须存放在AX (或AH )寄存器中数据BX :数据寄存器,在一些寻址方式中用做基址寄存器寄存器CX :计数器,在循环指令和串操作指令中作为隐含的计数寄存器DX :在作双字节运算时把DX 和AX 组合在一起共同存放在一个32位双字长的数据,其中DX 存放高16位BP :基址指针。
默认情况下用于存放堆栈中某一单元的偏移地址SI :源变址寄存器DI :目的变址寄存器,SI 和DI 用于存放数据段中某一单元的偏移地址Sp:堆栈指针寄存器.Ip:指令指针寄存器.3、实模式实模式是指采用与8086相同的16位段和偏移量,只能访问1MB 的实存内存,分段最大长度为64KB4、实模式下存储器地址的形成逻辑地址=16位段地址:16位偏移地址物理地址,即20位物理地址=16位段地址左移4位,即末尾添4个0,得到一个20位的段首地址,再与16位的偏移地址右对齐相加5、实模式下的段寄存器(联系P324debug 常用命令)CS :代码段寄存器DS :数据段寄存器SS :堆栈段寄存器ES :附加段寄存器6、堆栈的定义堆栈是一种数据结构,实际上是在寄存器中开辟的一端活动、另一端固定的数据存储区,堆栈的存取顺序是“后进先出”第二章7、指令系统应具备的四方面要求:完备性、有效性、规整性、兼容性8、80x86的几个主要指令:数据传送类指令算术运算类指令逻辑运算类指令程序控制类指令输入/输出类指令处理器控制指令区分第二题通用地址寄存器特权指令9、寻址方式的定义:寻址方式是指形成指令的操作对象的有效地址的方式10、写出五种寻址方式:立即数寻址(常量)、寄存器操作数的寻址、存储器操作数的寻址、[EA=基址+(变址*比例因子)+位移量]11、什么是DOS系统功能调用:答:DOS系统提供了八十多个子程序,按功能可分为三大类,一类是磁盘的读/写和管理,另一类是内存管理,还有一类是基本输入/输出管理以及时间日期的管理。
汇编语言考点总结
第一章基础知识一、机器语言:即机器指令(机器可以正确执行的命令)的集合。
二、汇编语言的产生:汇编指令是机器指令便于记忆的书写格式,即助记符。
(编译)三、汇编语言的组成:汇编指令(机器码的助记符)、伪指令(由编译器执行)、其他符号(由编译器识别)。
四、存储器:存放指令和数据的地方。
磁盘上的数据不读到内存中就无法被CPU使用。
五、指令和数据:都为二进制信息。
1KB=1024B。
六、存储单元:每个存储单元从0开始顺序编号。
七、CPU对存储器的读写:地址信息、控制信息、数据信息。
三者都属于电信号,需要靠导线传输。
总线为物理导线的集合,分为地址总线、数据总线、控制总线。
八、地址总线:CPU通过地址总线来指定存储单元,N根地址总线的宽度为N,最多可寻找2N个内存单元。
地址总线的宽度决定了CPU的寻址能力。
九、数据总线:数据总线的宽度决定了CPU和外界的数据传送速度。
十、控制总线:控制总线的宽度决定了CPU对外部器件的控制能力。
(低电平表示读取)。
十一、内存地址空间:宽度为10,可寻址的地址为1024个,即1024个内存地址空间。
十二、主板:主板上的器件通过总线(地址总线、数据总线、控制总线)相连。
十三、接口卡:CPU对外部设备不能直接控制,控制其工作的为扩展插槽上的接口卡。
十四、各类存储器芯片:随机存储器RAM/只读存储器ROM。
存储器物理上独立,但都和CPU总线连接,CPU由此控制读写。
逻辑存储器由若干物理存储器组成,十五、内存空间地址段:主随机存储器+显存地址空间+各个ROM的地址空间。
第二章寄存器(CPU工作原理)CPU的组成:运算器、控制器、寄存器,彼此之间靠内部总线相连。
8086CPU共有14个寄存器,所有寄存器都是16位的,可以存放2个字节。
一、通用寄存器:AX/BX/CX/DX,可分为2个独立的8位寄存器AH和AL(低8位)。
可存储16位数据,所能存储的最大值为216-1。
二、字在寄存器中的存储:用十六进制表示,存储在16位的寄存器中。
汇编考试题及答案详解
汇编考试题及答案详解一、选择题(每题2分,共20分)1. 下列哪一项是汇编语言的特点?A. 高级语言B. 面向对象C. 接近硬件D. 自动内存管理答案:C2. 汇编指令MOV AX, [BX]的含义是:A. 将AX寄存器的内容移动到BX寄存器B. 将BX寄存器的内容移动到AX寄存器C. 将内存地址BX指向的内容移动到AX寄存器D. 将AX寄存器的内容存储到内存地址BX指向的位置答案:C3. 下列哪一项不是汇编语言的伪操作码?A. ORGB. DBC. IFD. MOV答案:D4. 在汇编语言中,立即数的寻址方式是:A. 直接寻址C. 间接寻址D. 基址寻址答案:A5. 汇编程序中,用于定义数据的伪操作码是:A. EQUB. ENDC. DBD. DW答案:C6. 汇编语言中,指令JMP FAR PTR LABEL的作用是:A. 跳转到当前段内的LABELB. 跳转到其他段内的LABELC. 跳转到当前段的开始位置D. 跳转到其他段的开始位置答案:B7. 汇编语言中的段寄存器CS的作用是:A. 存储当前代码段的基地址B. 存储当前数据段的基地址C. 存储当前堆栈段的基地址D. 存储当前附加段的基地址答案:A8. 下列哪一项不是汇编指令的寻址方式?B. 寄存器寻址C. 相对寻址D. 绝对寻址答案:C9. 汇编语言中,指令PUSH AX的作用是:A. 将AX寄存器的内容压入堆栈B. 将AX寄存器的内容弹出堆栈C. 将AX寄存器的内容移动到其他寄存器D. 将AX寄存器的内容存储到内存答案:A10. 汇编语言中,指令DIV AX的作用是:A. 将AX寄存器的内容除以AL寄存器的内容B. 将AX寄存器的内容除以AH寄存器的内容C. 将AX寄存器的内容除以DX寄存器的内容D. 将AX寄存器的内容除以立即数答案:A二、简答题(每题5分,共10分)1. 解释汇编语言中的堆栈操作。
答案:堆栈操作是汇编语言中的一种数据结构操作,它遵循后进先出(LIFO)的原则。
汇编语言程序设计考试题型说明(老师上课讲的题)
汇编语言程序设计考试题型说明一、填空题(20%)二、选择题(15% )三、是非判断题(10%)四、简答题(10%)五、指出语句错误(8%)六、程序分析题(12%)七、程序填空题(10%)八、程序设计题(15%)•汇编语言题型讲解一、填空题例1.任何变量都有段地址、偏移地址、类型三种属性。
例2.“VAR DB 5 DUP(8,2 DUP(5))”语句汇编应分配15个字节单元。
例3. 请用一条指令实现如下操作:(1)将AX中划‘X’的位清0(2)将BL寄存器的低四位取反:X O R B L,0F H。
例 4.假设存储器中各字节单元的内容是:(06925H)=12H,(06926H)=45H,(06927H)=78H,那么字单元(06925H)= 4512H ,字单元(06926H)= 7845H。
例5.语句DA2 DW ‘AB’ 汇编后在DA2字节单元中存放42H,在DA2+1字节单元中存放41H。
例6.若DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOV AX,[SI+COUNT]中,源操作数的有效地址EA为20A8H,其物理地址为11488H。
例7.R E P、R E P Z、R E P N Z。
例8. DB指令以字节为单位分配存贮;DW指令以字为单位分配存贮。
故如下数据定义:V1 DB 4 DUP (2), 2COUNT EQU 10V2 DW COUNT DUP(?)为变量V1分配5个字节存贮区;为变量V2分配20个字节存贮区。
例9.在执行串处理指令时,为了使地址自动增量,应执行指令:C L D,该指令使得方向标志位例10.中断程序的入口地址称为中断向量IBM PC机中,共有256个中断源,每个中断向量占内存中的中断向量表4个字节。
例11.一个字存入堆栈时,堆栈指针SP -2修正;从堆栈中取出一个字时,SP +2修正,SP 总是指向栈顶单元。
例12.下面是对DOS功能调用方法的简单说明:(1)在AH寄存器中存入所要调用功能的功能号;(2)根据所调用功能的规定设置入口参数;(3)用I N T21H(4)相应的子程序运行完后,可按规定取得出口参数。
汇编语言的考试范围
汇编语言的考试范围汇编语言是计算机科学与技术领域中的一门重要课程,其能够直接操作计算机硬件,为高级语言的执行提供支持。
在计算机科学专业的学习中,掌握汇编语言是一项必备的技能。
在考试中,学生需要全面理解并精确掌握汇编语言的相关知识与技术。
本文将介绍汇编语言考试的范围,帮助读者对此有更清晰的认识。
一、基本概念与重要概念解释在汇编语言的考试范围中,首先需要理解和掌握一系列基本概念,如机器语言、汇编语言、指令、寄存器等。
同时,还需了解和解释其他一些重要概念,如地址寻址模式、指令格式、数据传送、算术运算、逻辑操作等。
这些基本概念和重要概念的理解对于学生深入掌握汇编语言具有重要意义。
二、指令系统与寻址方式在考试中,学生需要熟悉不同的指令系统和寻址方式。
指令系统是汇编语言中的核心概念之一,它包含了一系列的机器指令,用于执行特定的操作。
常见的指令系统有CISC和RISC,学生需要了解其特点和区别。
同时,不同的指令系统需要采用不同的寻址方式,如立即寻址、寄存器寻址、间接寻址、变址寻址等。
对指令系统和寻址方式的掌握是学生在考试中很重要的一部分内容。
三、程序设计与调试技巧汇编语言的程序设计是考试中的另一个重要内容。
学生需要学习并掌握程序设计的方法与技巧。
程序设计的目标是根据具体需求,编写能够运行的汇编语言程序。
在程序设计过程中,学生需要注意调试技巧,包括断点调试、单步执行、变量查看等。
程序设计与调试技巧的熟练掌握,是考试中获得高分的关键。
四、汇编语言与其他编程语言的联系与区别汇编语言与其他编程语言,如C语言、Java等,都有一定的联系与区别。
在考试中,学生需要分析和比较汇编语言与其他语言的特点。
从语法结构、编程范式、编译执行方式等多个方面进行对比和分析,理解不同编程语言的优劣势和适用场景。
五、相关实践与案例分析汇编语言的学习离不开实践操作。
在汇编语言的考试范围中,学生需要理解并掌握相关的实践技巧。
例如,通过编写实际的汇编程序,实现一些特定的功能要求。
汇编笔试知识点
一.汇编基础1.机器语言与汇编语言的区别:机器语言是由机器指令构成的CPU能够直接识别并执行的指令,而汇编语言由汇编指令集,伪指令集及其使用规则的统称2.编译型语言和解释型语言:编译型语言是解释完程序之后生成可执行的程序后,运行后不需要编译程序在场,比如C语言而解释性语言是边解释边执行,比如BASIC和脚本语言,java等3.汇编语言的特点:●占用空间少●执行速度快●直接控制硬件能力强●开发周围长,可移植性差,不易掌握●效率更高,速度更快●减小对存储空间的需求4.冯.诺伊曼的结构:运算器,存储器,控制器,输入设备,输出设备。
具体:数据和程序都以二进制的形式不加区分的放在存储器中,存储位置由地址决定,地址码也是二进制形式5.计算机的组成:硬件+软。
硬件组成:CPU,总线,输入输出设备,存储器;软件组成:系统软件,用户软件6.8086微处理器的结构图,理解掌握这里要解决20位总线和16位寄存器的冲突,方法是物理地址求和,段基址与偏移地址的组合7.寄存器定义:寄存器是CPU内存放操作数的地方,它的操作速度比内存操作数快8.BP和SP,指针寄存器,主要来访问堆栈内的存储单元;BP,可直接存取堆栈中的数据,SP只能访问栈顶9.内存管理模式:●一个字的内容是该地址指向的字节单元与下一个单元拼接而成●一个双子的内容是该地址指向的单元及其后面的3个单元拼接而成的●拼接的原则:高地址存放高位内容,低地址存放低位内容10.段寄存器和指针寄存器的配对使用:CS与IP取指令所用的段寄存器和偏移量,串操作中目标操作数的段寄存器和偏移量一定是ES和DI,堆栈操作中段寄存器和偏移量一定是SS和SP11.标志寄存器就一个FLAG,6个状态标志,3个控制标志,7位保留,控制标志:●IF,中断标志,IF=1则开中断,IF=0,关中断●TF,陷阱标志,TF=1则单步中断●DF,方向标志,在串操作数指令操作中,DF=1则自减,DF=0则自增12.数据表示:,二进制在后面跟B,八进制跟Q,十六进制跟H,十进制跟D,十六进制如果第一个是字母的话必须在前面加013.BCD码,分为压缩和非压缩BCD码●非压缩的BCD码是用一个字节表示一位十进制数,高四位为0000,低四位表示0-9●压缩的BCD码是用一个字节表示两位十进制数,高四位表示十位数字,低四位表示个位数字●14.补码的扩展问题:●正数的符号扩展应该添0补足,负数应该用1补足,n位二进制数补码表示数的范围是-2^n-1<=n<=2^n-1 -115.浮点数的表示方法二.指令系统16.关于操作数●单操作数指令的操作数只能是寄存器操作数或者内存操作数●双操作数指令的目标操作数只能是寄存器操作数或内存操作数,而源操作数可以使三种操作数,但是2种操作数不能同时是内存操作数●内存操作数的关键是找到其所在的地址,即必须找到所在段和相对段首的偏移地址即EA,然后求和得到物理地址17.寻址方式是重点●直接寻址中,可以用变量符号代替数值地址●寄存器间接寻址,依然是利用物理地址寻址,只不过地址存在寄存器里面,比如BX,SI,DI●寄存器相对寻址是前2者的最一般情况,●基址变址寻址方式,BX与DI,SI,BP与SI,DI●相对基址变址就是多一个立即数的偏移量18.指令系统中所关心的有3点:19.一些指令的执行时间,算术运算中IDIV是最多的,其次是乘法IMUL,最快的是mov和移位指令,其次是ADD;加法指令执行时间,最慢的是立即数到存储器,其次是寄存器到存储器,最快的是寄存器到寄存器;各种寻址方式里面,最快的是寄存器间接寻址,最慢的是相对基址变址20.MOV指令的注意事项●MOV指令时使用的最频繁的指令●2种操作数不能同时是存储器,段寄存器●目标操作数不能是立即数,不能是CS●不能直接给段寄存器赋值,必须要通过寄存器来赋值●IP不能是MOV的操作数●MOV不改变FLAG中的值21.堆栈操作POP和PUSH●PUSH CS 合法但是POP CS不合法●PUSH 和POP操作数都不能是立即数●PUSH和POP只能按字来访问堆栈,依然遵守高高低低的原则,不能按字节来访问●PUSH和POP不影响标志位22.XCHG命令●XCHG不影响标志位●操作数不包括段寄存器,也不能是立即数●2个操作数不能同时是存储器23.XLAT(查表转换指令)有2个隐藏的操作数,功能:表首是由DS:BX决定,偏移量为AL,然后取出对应字节数据放到AL中24.IN和OUTHF,将标志寄存器状态标志SF,AF,CF,PF,ZF转送到AH的对应位置,若没有的则AH的位不变;相反SAHF,是将AH的对应位值给标志位。
(完整word版)汇编语言知识点总结(word文档良心出品)
汇编语言精简版版权归属GuYue.Wang一、入门基础1.汇编基本格式2.内存管理:小端存储。
3.寄存器16位CPU通用寄存器共8个:AX,BX,CX,DX,BP,SP,SI,DI,它们都可以作为普通的数据寄存器来使用,也有一些特殊的功能,如下:①数据寄存器AX:BX:存放偏移地址CX: 循环次数(loop)DX:②指针寄存器SI:存放偏移地址,指向源操作数或作为变址寄存器,参与基址、变址寻址DI:存放偏移地址,指向目的操作数或作为变址寄存器,参与基址、变址寻址SP:堆栈指针,存放偏移地址,与SS结合使用BP:基址寄存器,存放偏移地址,与DS结合使用IP: 指令指针③段寄存器CS:代码段DS:数据段SS:堆栈段ES:4.标志位①ZF(零标志位):结果为0,则ZF=1.②PF(奇偶标志位):结果所有bit位1的个数为偶数,PF=1③SF(符号标志位):有符号数运算,结果为负,SF=1④OF(溢出标志位):有符号数运算,发生溢出,OF=1⑤CF(进位标志位):无符号数运算,记录了最高有效位向更高位的进位或借位5.定义数据二、指令集1.数据传送指令1> MOV <目的操作数> , <源操作数>①两个操作数位数一致②不能在两个存储单元之中进行数据直接传送③不能在两个段寄存器之间进行数据直接传送④imm不能直接送入段寄存器⑤目的操作数不能是CS,IP2> XCHG <目的操作数> , <源操作数> :交换两个操作数的内容xchg reg , regxchg reg , memxchg mem , reg3>LEA <OP2> , <OP1> :将OP1的地址偏移量传送给OP2①源操作数必须是内存操作数②目的操作数必须是16位的通用寄存器4>PUSH <OP> , POP <OP>:堆栈①SS:栈段寄存器SP:栈顶指针(使用时应当先初始化)②一次压入或弹出一个字,栈顶最大变化范围0~FFFFH③执行PUSH、POP时,SP指针默认移动④栈空:SP指向栈空间最高地址单元的下一个单元⑤OP:段寄存器(除CS),16位通用寄存器,内存的16位字2.算数运算指令1> ADD <OP1> , <OP2> | SUB <目的> , <源>①目的=目的+/-源②两操作数不能同时为mem(注:ADD 、SUB影响标志位:CF、ZF、SF、OF、AF、PF)2> INC <reg/mem>:自增1 | DEC <reg/mem>:自减1(注:INC、DEC适用于无符号运算,不影响进位标志CF)3> NEG <reg/mem> :求负(求补),按位取反加1①影响标志位:CF、ZF、SF、OF、AF、PF4> CMP <> , <>:目的操作数—源操作数,不回送结果,只影响标志位①根据相减结果修改OF、SF、ZF、CF、AF、PF②无符号数的比较:③有符号数的比较:5> MUL <乘数>(无符号乘法)| IMUL <乘数>(有符号乘法)①乘数不能位imm②IMUL指令的执行结果的高半部分不是低半部分的符号扩展,则设置CF、OF6> DIV <除数>(无符号除法)| IDIV <除数>(有符号除法)①除数不能位imm②IDIV:余数符号与被除数相同3.逻辑运算与移位指令1>AND <目的> , <源>:按位相与,将结果保存在目的操作数中①总是清除OF 和CF,根据结果修改SF、ZF、PF②对特定位清‘0’同时保留其他位③应用:字符大小写转化2> OR <目的> , <源>:按位相或,将结果保存在目的操作数中①使CF=0、OF=0,根据结果修改SF、ZF、PF②对特定位置‘1’③将数字转化位对应的ASCII码3> NOT <reg/mem>:按位取反,不影响任何标志位4> XOR <目的> , <源>:按位异或,将结果保存在目的操作数中①对某些为取反,且不影响其它位,与‘0’异或保持不变;与‘1’异或取反②对寄存器清0,或判断两个值是否相等③交换两个数,不使用中间变量④CF=0,OF=0,PF、SF、ZF变5> TEST <OP> , <imm>:按位相与,不回送结果①清除OF、CF;修改SF、ZF、PF②测试某些位是‘0’或‘1’6> SHL、SHR①格式:SHL mem/reg , 1SHL mem/reg , CL(移动次数>1放入CL)②③相当于乘除法4.程序控制指令1> JMP :无条件转移指令2>LOOP:循环指令,循环次数存于cx中,执行loop时首先CX=CX-1,然后判断CX=0?,是则跳转3>条件跳转指令①基于特定的标志值②根据操作数之间是否相等,或根据(E)CX的值与CMP <left> , <right>指令结合使用③基于无符号整数比较结果的跳转指令④基于有符号整数比较结果的跳转指令5.输入输出指令(接口与CPU之间的操作)1> IN AL|AX , <接口地址> :从接口到CPU的输入操作2> OUT <接口地址> , AL|AX :从CPU到接口的输出操作①CPU只能用AL或AX接收或发送数据②直接寻址(接口地址用一个字节表示00~FFH)IN AL, 35HOUT 44H , AX③寄存器间接寻址(接口地址由DX内容决定0000~FFFFH)MOV DX,03F8HIN AL ,DX三、补充1.CLC :使CF=02.ADC <op1> , <op2> :op1=op1+op2+CF。
汇编期末知识点总结
汇编期末知识点总结一、计算机体系结构1. 计算机的组成部分:中央处理器、主存储器、输入输出系统2. 计算机的主要功能:数据处理、数据存储和数据传输3. 计算机体系结构的三个基本要素:数据、指令、控制。
4. 计算机的层次结构:硬件层次、机器语言层次、系统层次、程序设计语言层次和应用软件层次。
二、汇编语言概述1. 汇编语言的定义和特点2. 汇编语言的分类和发展历程3. 汇编语言的应用领域三、汇编语言的指令系统1. 数据传送指令:MOV指令、LEA指令、LDS指令、LES指令2. 算术运算指令:ADD指令、SUB指令、INC指令、DEC指令、NEG指令3. 逻辑运算指令:AND指令、OR指令、XOR指令、NOT指令4. 移位指令:SAL指令、SHR指令、SAR指令、ROL指令、ROR指令5. 控制指令:JMP指令、JC指令、JNC指令、JO指令、JNO指令、JZ指令、JNZ指令、CMP指令、LOOP指令、CALL指令、RET指令四、寄存器和内存1. 通用寄存器:AX、BX、CX、DX、SP、BP、SI、DI2. 段寄存器:CS、DS、SS、ES3. 操作寄存器:IP、FLAGS4. 内存访问指令:MOV指令、XCHG指令5. 标志寄存器:OF、DF、IF、TF、SF、ZF、AF、PF、CF五、地址和位移1. 设计位移的基本原则和方法2. 直接寻址、寄存器间接寻址、直接寻址、相对寻址、基址变址寻址、变址寻址、相对基址变址寻址六、程序设计与调试1. 程序的段定义、区定义、符号定义2. 程序的生成与调试3. 目标程序的连接和装入4. 调试工具的使用七、汇编语言与C语言的结合1. 汇编语言和C语言的特点2. 汇编语言和C语言的调用关系3. 汇编语言和C语言的相互调用方法4. 汇编语言和C语言的优化方法八、嵌入式系统与汇编语言1. 嵌入式系统的定义和特点2. 嵌入式系统的应用领域3. 嵌入式系统中的汇编语言特点4. 嵌入式系统中的汇编语言编程方法九、汇编语言的扩展1. Intel 8086的扩展指令集2. 增强指令集3. 浮点运算指令集4. SIMD指令集以上是汇编期末考试的知识点总结,总字数超过了6000字。
汇编语言考试题库及答案
汇编语言考试题库及答案一、选择题1. 在汇编语言中,以下哪个指令用于将数据从内存加载到寄存器中?A. MOVB. ADDC. SUBD. MUL答案:A2. 假设寄存器AX的值为1234H,执行指令“AND AX, 0F0H”后,AX 的值是多少?A. 1230HB. 0F34HC. 0F30HD. 1234H答案:C二、填空题1. 在汇编语言中,________指令用于将立即数加载到寄存器中。
答案:MOV2. 寄存器EAX的高16位是_______。
答案:AX三、简答题1. 解释汇编语言中的“段”是什么概念?答案:在汇编语言中,“段”是内存管理的一个概念,用于将程序的不同部分(如代码、数据、堆栈)分隔开来。
每个段都是内存中的一个区域,它有一个段基址,程序中的地址由段基址和偏移量组合而成。
2. 描述汇编语言中循环结构的实现方式。
答案:循环结构在汇编语言中通常通过标签和跳转指令实现。
首先定义一个循环的开始标签,然后在循环体中执行需要重复的操作。
循环结束前使用条件跳转指令(如JE、JNE等)跳回循环开始的标签,直到满足跳出循环的条件。
四、编程题1. 编写一个汇编程序,实现将两个16位无符号数相加,并将结果存储在寄存器AX中。
答案:```MOV AX, 1234HMOV BX, 5678HADD AX, BX```上述程序首先将1234H加载到AX寄存器中,然后将5678H加载到BX寄存器中,最后使用ADD指令将BX中的值加到AX中,结果存储在AX寄存器中。
2. 编写一个汇编程序,实现将字符串"Hello, World!"存储在内存中。
答案:```.DATAString DB 'Hello, World!', 0```上述程序在数据段定义了一个字符串"Hello, World!",后面跟着一个空字符作为字符串的结束标记。
《汇编语言程序设计》必考试题及答案
《汇编语言程序设计》必考试题及答案一、选择题1. 汇编语言属于 ____。
A. 高级语言B. 机器语言C. 低级语言D. 自然语言答案:C. 低级语言2. 在汇编语言中,寄存器eax主要用于 ____。
A. 存储返回值B. 存储函数参数C. 存储局部变量D. 存储全局变量答案:A. 存储返回值3. 汇编语言中,jmp指令用于 ____。
A. 设置循环条件B. 调用子程序C. 跳转到指定地址D. 返回主程序答案:C. 跳转到指定地址二、简答题1. 请简述汇编语言与高级语言的区别。
汇编语言是一种低级语言,使用助记符来代表机器指令,每条汇编指令对应一条机器指令。
而高级语言更加抽象,采用更接近人类自然语言的表达方式,通过编译器将高级语言编写的程序转换为机器语言。
2. 请列举汇编语言常用的寄存器及其作用。
汇编语言常用的寄存器包括:- eax:主要用于存储返回值。
- ebx、ecx、edx:通用寄存器,用于暂存计算结果。
- esi、edi:源操作数寄存器和目的操作数寄存器,用于存储数据传输时的源地址和目的地址。
- ebp、esp:用于管理函数调用过程中的栈帧。
- eip:指令指针寄存器,存储下一条将要执行的机器指令的地址。
三、编程题请编写汇编语言程序,实现从键盘输入两个数,并将其相加后输出的功能。
```assemblysection .dataprompt db '请输入两个数,以空格分隔:', 0result db '两数相加的结果为:%d', 0section .bssnum1 resb 4num2 resb 4section .textglobal _start_start:; 输出提示信息mov eax, 4mov ebx, 1mov ecx, promptmov edx, 20int 0x80; 输入第一个数mov ebx, 0mov ecx, num1 mov edx, 4int 0x80; 输入第二个数 mov eax, 3mov ebx, 0mov ecx, num2 mov edx, 4int 0x80; 将两个数相加 mov eax, [num1] mov ebx, [num2] add eax, ebx; 输出结果mov ebx, eaxmov eax, 1mov ecx, resultint 0x80; 退出程序mov eax, 1xor ebx, ebxint 0x80```以上为一个简单的汇编语言程序,实现了从键盘输入两个数,并将其相加后输出的功能。
汇编语言讲课复习考试提纲(单页)
IBM汇编语言课程的讲课和考试提纲本课程以高级语言编程的作为基础;为组成、单片机、ARM、DSP打基础。
了解硬件底层工作原理和控制方式一、理解基于8086CPU的PC机的硬件组成——第2章1、PC机组成:CPU + 存储器 + I/O接口电路 + 外围设备2、CPU:决定指令系统、决定字长(数据线)、决定存储空间(地址线);CPU = 运算器 + 控制器 + 寄存器(8086 CPU内部有14个16位寄存器)3、内存:地址范围、地址分配(哈佛结构、普林斯顿结构)地址表达、地址分段;存储单元的地址和内容;存储单元内容的形式和含义;字的存储方式——大端格式,小端格式。
(8086是小端格式)4、接口电路:I/O概念;接口电路的作用;外围设备。
二、掌握汇编语言编程调试——第3~7章1、指令格式——(第3章)2、寻址方式——(第3章)3、指令系统——(第3章)4、伪指令——(第4章)5、汇编语言程序框架——(第4章)6、汇编语言上机步骤——(第4章)7、DBUG动态调试工具——(第4章)8、基本程序结构——(第5章)9、子程序——(第6章)10、宏操作——宏指令、宏定义、宏调用、宏展开(第7章)11、典型汇编语言程序——数据转换三、建立I/O概念、了解I/O方法、理解功能调用——第9-11章1、I/O概念2、查询方式I/O3、中断方式I/O——软硬中断、中断屏蔽、优先级、中断服务程序中断矢量、中断矢量表、中断类型号4、DMA方式I/O5、功能调用——BIOS功能调用、DOS功能调用(系统功能调用)6、键盘管理7、显示管理8、磁盘管理四、理解计算机底层工作原理,理解软件硬件的结合方式,熟悉底层内容的描述方法。
1、进制转换、16进制数的意义、有符号数的补码表达;2、字符编码ASCII以及存储、变换——3、堆栈的概念和使用——4、中断的概念和内容——5、CPU寄存器——6、BIOS固件——7、系统启动过程——。
汇编语言复习要点
汇编语言复习要点2009-6-9一、程序员眼中的计算机1.计算机原理组成2.计算机原理的两个核心内容:☞机器指令的寄存器程控方式;☞存储程序式和CPU取指、执行的自动循环。
3.寄存器组各标志位的定义(SF、CF、OF、PF、ZP、AF二、数、码和指令①计算机被二进制机器码驱动且只能接受、认识和处理二进制位串;②一个二进制位串可以是指令、数或某种编码:究竟是什么由位串表征的含义决定;③汇编语言能认识各种进制的数、编码及字符串等其实是编译程序的功能;④溢出的人工判断:☞真正意义上的相加才可能溢出;☞正数相加向符号位进位或负数相加不向符号位进位即为溢出。
补码正负数据的不对称性,如8位补码:80H~07fH⑤转换:☞不同进制数之间的转换;☞数和码(BCD、ASC码)间的转换。
三、存储器寻址和堆栈1.物理地址定位存储单元;2.逻辑地址或地址指针的组成:段基址的高16位和偏移量(或有效地址);①代码段CS:IP;②堆栈段SS:SP;③数据段或扩展段DS/ES:各种存储器寻址方式生成的偏移量3.存储器寻址方式:①直接(使用偏移量)寻址,实际编程主要采用符号地址,即变量的形式;②BX、SI、DI及BP间接寻址;③BX及BP基址和SI及DI变址寻址;位移量的概念;④基址变址寻址。
顺便提及:①CPU内部的寄存器寻址;②在代码段伴随指令的立即数寻址;③I/O接口寻址方式:立即数寻址及使用DX间接寻址。
4.堆栈①堆栈的“生成”和空栈的状态:栈容量、栈顶、栈底;②PUSH和POP的功能和行为方式:栈指针SP变化和数据入、出栈的关系;③PUSHF和POPF的默认操作数:标志寄存器;④堆栈对子程序功能的支持:CALL和RET;CALL FAR PTR SUBPROC⑤堆栈对中断功能的支持:中断响应以非指令方式操作堆栈及IRET和RET的异同。
四、完整的指令集1.指令相关的核心内容包括:①指令的功能;②对标志位的影响;③必须和隐含使用的寄存器。
汇编语言复习资料4
《汇编语言》试卷一、单选题(每题1分,共20分)1.CPU在读取指令时,实际读到的是什么?()A.伪指令和汇编指令所对应的字符串B.用汇编语言写的源程序中的信息C.由一系列二进制位组成的信息D.汇编指令所对应的字符串2.关于编译和连接,错误的说法是()。
A.编译产生的*.obj文件不能在操作系统下直接运行B.连接产生的*.exe文件里面没有伪指令C.编译可以检查出语法错误D.连接可以检查出逻辑错误3.CPU传递到地址总线上的地址是()。
A.逻辑地址B.偏移地址C.物理地址D.段地址4.一条将立即数赋值给寄存器的指令,在执行的前一刻,指令中的立即数在()中。
A.通用寄存器B.端口C.内存D.CPU内部的指令缓冲器5.关于8086CPU的几个寄存器,正确的说法是()。
A.可将BX当成两个8位寄存器,在偏移地址范围为0~255时,可以用“mov ax,[bl]”来实现将内存中的数据读到ax中B.可以用“byte ptr”实现将SI当成两个8位寄存器使用C.可将AX、BX、CX、DX当成8个8位寄存器使用D.AX、ah、al是不同的寄存器,指令“add al,bl”的执行不会影响AX的值6.对于16位结构的CPU,其应有的特征不包括()。
A.寄存器最大宽度是16位B.寄存器与运算器之间的通路为16位C.运算器一次处理的数据的最大宽度为16位D.地址总线宽度是16位7.下列与8086CPU寻址相关的说法,错误的是()。
A.8086CPU有20根地址总线,它的寻址能力为1MBB.一个物理地址可以对应多个段地址与偏移地址C.因为段寄存器是16位,所以一个段最大为64KBD.CPU内部有一个能合成20位地址的地址加法器8.8086CPU读取、执行指令的过程是()。
①从CS:IP指向的内存空间读取指令,将指令放入指令缓冲器②执行指令,转到步骤①③IP指向下一条指令A.①、②B.①、③、②C.若指令是转移指令,过程为①、③、②,不是则过程为①、②D.若指令是转移指令,过程为①、②,不是则过程为①、③、②9.对于8086CPU,错误的指令是()。
汇编语言复习提纲
汇编语言复习提纲一、题型1.选择题60%,50小题2.简答10%,2小题3.程序功能、结果20% ,4小题4.程序设计10%二、基础知识1.基本数据表示,数制间的转换(2,10,16,补码)2.计算机系统主要的主要功能部件,它们各自的主要功能,寄存器的分组及各自的作用(通用寄存器、地址寄存器、段寄存器、控制寄存器(IP\FLAGS)主要标志位的含义(ZF,CF,SF)3.寻址方式(典型的几种)、主存储器的组织寻址方式的概念、物理地址、逻辑地址操作数可能存放的地方:指令中(立即数)寄存器、存储器。
4.基本指令的含义(指令系统,六类指令、功能)5.MOV(什么不能传、传送图)●PUSH,POP●XCHG●LEA●SHL,RoL●条件转移指令●ADD、SUB、ADC、SBB、INC、DEC、NEG、CMP等指令分别影响哪些标志位,各标志位的含义是什么?注意ADD、ADC,SUB、SBB 的区别。
●逻辑运算(NOT,NEG,AND,OR,XOR,TSET)指令,移位指令(shl,sal,rol,rcl)CMP指令与TEST指令的运用两种指令都不保存运算结果,但是要影响标志位。
比较两个带符号数大小CMP AL,AHJL L1JMP L2测试AL第0位是否为1TEST AL,1JZ L1JMP L2●CBW含义●循环指令(LOOP,LOOPZ)●串操作与前缀(REP),MOVS,STOS,LODS,CMPS。
6.基本伪指令的含义●DB、DW这些空间分配伪指令分别分配多大的空间,计算数据定义的字节数。
●DUP关键字,计算使用DUP关键字定义的数组长度、类型等。
●EQU关键字与=关键字的区别。
●ASSUME语句的概念,对指令汇编的影响。
●ORG伪指令与$符号的使用方法及含义。
●BYTE PTR ,WORD PTR,OFFSET7.上机主要步骤8.Debug的功能、命令(D、U、G、R、A、T)9.DOS调用。
1号,2号,9号,10号功能10.顺序结构:完整程序结构,P53例,简化程序结构P88例4-9)11.条件转移(符号函数,大小写转换)12.循环程序:P129例,P146例,(注意:如何用Debug查看结果),发声程序(多重循环)13.串处理(四个准备工作),REP MOVSB,REP STOSB,P133例,14.子程序(又叫过程,子程序定义,属性),P151例,回车换行程序15.宏结构子程序和宏结构的优缺点,自的应用场合宏结构仅是源程序级的简化:宏调用在汇编时进行程序语句的展开,不需要返回;不减小目标程序,执行速度没有改变。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、汇编语言的定义与特点定义:汇编语言是面向机器的语言,是利用计算机所有硬件特性并能直接控制硬件的语言特点:汇编语言是一种采用助记符表示的程序设计语言,它的指令和机器语言的指令在很大程度上是一一对应的,其指令格式及语法、语义等和机器语言也基本一致。
犹豫汇编语言使用一些标示指令操作的英文单词缩写来代替二进制序列,因此便于程序员记忆和编程。
2、80x86微处理器的组成8086/8088微处理器在内部结构上划分成两个功能模块,即总线接口单元(BIU )和执行单元(EU )2、通用寄存器AX :累加器,乘除运算指令规定其中一个操作数必须存放在AX (或AH )寄存器中数据BX :数据寄存器,在一些寻址方式中用做基址寄存器寄存器CX :计数器,在循环指令和串操作指令中作为隐含的计数寄存器DX :在作双字节运算时把DX 和AX 组合在一起共同存放在一个32位双字长的数据,其中DX 存放高16位BP :基址指针。
默认情况下用于存放堆栈中某一单元的偏移地址SI :源变址寄存器DI :目的变址寄存器,SI 和DI 用于存放数据段中某一单元的偏移地址Sp:堆栈指针寄存器.Ip:指令指针寄存器.3、实模式实模式是指采用与8086相同的16位段和偏移量,只能访问1MB 的实存内存,分段最大长度为64KB4、实模式下存储器地址的形成逻辑地址=16位段地址:16位偏移地址物理地址,即20位物理地址=16位段地址左移4位,即末尾添4个0,得到一个20位的段首地址,再与16位的偏移地址右对齐相加5、实模式下的段寄存器(联系P324debug 常用命令)CS :代码段寄存器DS :数据段寄存器SS :堆栈段寄存器ES :附加段寄存器6、堆栈的定义堆栈是一种数据结构,实际上是在寄存器中开辟的一端活动、另一端固定的数据存储区,堆栈的存取顺序是“后进先出”第二章7、指令系统应具备的四方面要求:完备性、有效性、规整性、兼容性8、80x86的几个主要指令:数据传送类指令算术运算类指令逻辑运算类指令程序控制类指令输入/输出类指令处理器控制指令区分第二题通用地址寄存器特权指令9、寻址方式的定义:寻址方式是指形成指令的操作对象的有效地址的方式10、写出五种寻址方式:立即数寻址(常量)、寄存器操作数的寻址、存储器操作数的寻址、[EA=基址+(变址*比例因子)+位移量]11、什么是DOS系统功能调用:答:DOS系统提供了八十多个子程序,按功能可分为三大类,一类是磁盘的读/写和管理,另一类是内存管理,还有一类是基本输入/输出管理以及时间日期的管理。
为了方便程序员使用这些功能,把这些子程序编写成相对独立的程序模块并且编上号,借助编号,程序员就可以很方便地调用这些子程序12、如何使用DOS系统图功能调用①根据所需的功能调用设置好相应的调用参数②将调用的系统子程序的编号即功能号送去AH寄存器③用“INT21H”软件中断指令转到系统子程序的总入口,然后通过分析AH的内容,在转向相应的子程序,即调用功能子程序④根据有关功能调用说明取得返回参数,最后分析和处理返回参数13、汇编语言语句格式汇编语言语句格式通常包括名字项、操作项、操作数项和注释。
其中,名字项有变量和标号之分,耳操作数项可以是常数、寄存器、标号、变量或者由表达式组成。
14、汇编语言源程序格式汇编语言源程序格式由若干个段组成,最多有4个段:代码段、数据段、附加段和堆栈段、后三个段可有可无,但程序至少有一个代码段。
第四章15、程序控制结构的定义程序控制结构是指程序执行时,根据程序执行流程,可区分出不同特征的几种程序结构。
汇编语言源程序中包括四种程序机构,即顺序结构、分支结构、循环机构和子程序结构,任何复杂程序都可由这四种程序控制结构组成16、分支结构程序设计分支结构可分两分支结构和多分支结构。
分支程序设计需要解决三个问题:判断、定标号和转向。
两分支结构程序只有一个条件判断。
而多分支结构程序存在多个条件判断。
通常处理多分支结构,可以采用逻辑分解法和跳转表法17、循环结构程序设计循环结构又分单重循环和多重循环。
循环程序设计的关键在于循环条件的设计。
可以采用计数控制法、条件控制法、逻辑尺控制法等。
18、串操作串操作指令包括基本串操作指令和重复前缀指令。
串游自己独特的寻址方式。
指令中源操作数地址和目的操作数地址特定地、自动修改操作数变址指针SI和DI,使其指向下一个单元。
第六章19、串输入/输出指令功能指令功能:讲保存在DX寄存器中的I/O端口地址所指I/O端口中的一个字节或字或双子输入到目的变址寄存器DST所指的内存单元中,然后根据方向标志DF的状态将目的变址寄存器增减1(字节输入)或2(字节输出)或4(双子输入)。
其中DX=I/O端口地址,DST 为目的变址寄存器DI或EDI若是:字节输入则增减1字输入则增减2双子输入则增减4INS可以与重复前缀REP一起联用15、数据传送控制方式(1)无条件传送方式(2)查询传送方式查询传送方式适用于CPU与外设不同步的情况。
输入之前,查询外设数据是否准备好;若数据已经准备好,则输入;否则继续查询,直到数据准备好。
输出之前,查询外设是否“忙”,若不“忙”,则输出;否则继续查询,直到不“忙”(3)中断传送方式(4)直接存储器传送(DMA)方式由于高速I/O设备具有准备数据的时间短、要求传送速度快等特点,所以一般采用直接存储器传送方式,即高速设备与内存之间直接交换数据。
这种方式传送数据时成批进行的。
其过程是:先把数据在高速外设仲存放的起始位置、数据在内存储器中存放的起始地址、传送数据长度等参数输出到连接高速外设的借口(控制器),然后启动高速外设,设备准备开始DMA数据传送。
当高速外设DMA传送准备好后,想处理机发送起控制器控制下交换数据。
数据交换完毕后,由高速外设发出“完成中断请求”,并交回总线控制权。
处理机响应上述中断,由对应得中断处理程序对高速外设进行控制或对已经传送的数据进行处理,中断返回后,原程序继续运行。
16、中断过程包括中断检查和中断处理两个过程。
17、中断处理过程的步骤(1)取中断类型号(2)保护中断现场(3)取中断向量,转向中断处理程序(4)置标志位IF和TF为0,禁止外部中断和单步中断(5)执行中断处理程序(6)中断返回1.局域网体系结构由LLC子层、MAC子层和物理层组成.2.快速以太网传输速率为100Mb/s,1000BASE-LX使用单模光纤.3.衡量一个数据通信线路的优劣,主要有两个标准:一是数据传输速率二是信道容量.4.根据密钥管理方式的不同,有两种密钥系统.分别是对称密钥和非对称密钥.5.高速以太网组网除了主机外还必须具有1000Mb/s以太网交换机和100Mb/s网卡和双绞线或光纤等硬件.6.从通信角度来看,网络层向运输层提供面向连接和面向无连接两种服务..三.名词解析1.互操作:指网络中不同计算机系统之间有透明的访问对方资源的能力.2.资源子网:指由主机系统、终端、终端控制器、联网外设、各种软件资源与信息资源组成,负责全网数据处理业务,向网络用户提供各种网络资源与网络服务.3.FR:(帧中继)它不再强调数据传输的可靠性,最大程度的提供了数据传输吞吐量.4.QoS:服务质量.表示网络的服务质量.5.ITU-T:国际电信联盟-电信标准部门.前身是国际电报电话咨询委员会CCITT和美国国家标准协会ANSI.6.广播地址:主机号为全为“1”,专门用于同时向网络中所有工作站进行发送的一个地址.四.简答题1.什么是因特网?TCP/IP分几层?各层有什么协议?p176p179~p180因特网是指采用TCP/IP协议簇作为通信的规则,由众多网络相互连接而成的,当今全球最大的、开放的特定计算机网络。
TCP/IP的体系结构比较简单,它只有4层,分别是网络接口层、网际层、运输层和应用层.网络接口层:LAN-MAN-WAB网际层:IP-ICMP-IGMP-ARP-RARP运输层:TCP-UDP应用层:SMTP-FTP-DNS-SNMP-NFS-HTTP-TELNET1.运输层在计算机网络中起什么作用?它为用户提供哪些服务?p109下面p110运输层在网络分层结构中起着承上启下的作用.运输层为应用层的用户提供高效、可靠和价格合理的服务.服务分为两类:面向连接和无连接.2.局域网组成分为几层?各层次的内涵是什么?p130局域网分为:物理层、介质访问控制MAC子层和逻辑链路控制LLC子层.物理层:规定了传输介质及其接口的机械特性、电气特性、接口电路的功能以及信令方式和信号速率的规程特性等.MAC子层:负责解决与介质接入有关的问题和在物理层的基础上进行无差错的通信.LLC子层:集中了与介质接入无关的功能.五.计算题1.已知带宽H=24MHz.状态N=4,在无噪音的情况下,根据奈奎斯特定理,计算信道容量C=?若信号S=1023μv噪音N=1μv,根据香农定理计算这时的信道容量.无噪音情况下:=224log24=96(Mb/s)有噪音情况下:=24log2(1+1023/1)=240(Mb/s)2.已知信道带宽为4Mb/s.在光纤中的传输速率为2.5×105公里/s光纤长度为1000公里.现要传送1个字节的数据.试求发送时延和传输时延。
.3.在ISDN中,有一组接口PRI,可以连接两种信道,北美地区国家使用T1,欧洲地区国家使用E1,他们都由若干数据信道和一个信令信道组成,其中。
数据信道B=64kb/s,信令信道D=64kb/s,此外,T1还有8kb/s的成帧信息,E1有64kb/s,计算T1,E1的系统传输速率。
T1标准的系统传输速率:23B+D+8kb/s=2364kb/s+64kb/s+8kb/s=1544kb/sE1标准的系统传输速率:30B+D+64kb/s=3064kb/s+64kb/s+64kb/s=2048kb/s。