当前位置:文档之家› Python 语言程序设计3

Python 语言程序设计3

Python 语言程序设计3
Python 语言程序设计3

第三周分支与循环

3.1 程序基本结构

1. 程序流程图—用规定的一系列图形、流程线和文字说明算法中的基本操作和控制流程。

流程图的基本元素包括:

(1)表示相应操作的框

(2)带箭头的流程线

(3)框内外必要的文字说明

2. 设计程序框图的步骤:

(1)用自然语言表述算法步骤

(2)确定步骤逻辑结构,用相应框图表示

(3)流程线连接框图,加上终端框,得到整个算法的程序框图

3. 任何算法都可以由顺序、选择、循环三种基本结构组合实现:

(1)顺序结构:按逻辑顺序自上而下依次运行的结构,如:温度转换程序;

(2)选择结构(分支结构):在算法中通过对条件的判断,根据条件是否成立而选择不同流向的算法结构;

(3)循环结构:指在一定条件下反复执行某部分代码的操作;

3.2 简单分支

例:

PM2.5指数分级程序功能IPO模式描述:

输入:接受外部输入PM2.5值

处理:空气质量分级算法

输出:打印空气质量提醒

PM2.5指数分级伪代码

If PM2.5值> 75

打印空气污染警告

If PM2.5值< 35

打印空气质量优,建议户外运动

流程图如图所示:

程序5:

[python]view plain copy

1.#pm25.py

2.#空气质量提醒

3.

4.def main():

5. PM = eval(input("What is today'sPM2.5? "))

6.# 打印相应提醒

7.if PM > 75:

8.print("Unhealthy. Becareful!")

9.if PM < 35:

10.print("Good. Go running!")

11.main()

【运行结果】

输出:输入:

What is today'sPM2.5? 90

Unhealthy. Becareful!

(1)If语句格式:

If :

【注】是条件表达式,是一个或多个语句序列

先判断条件,若true,则执行,再转向下一条语句;

若false,则直接跳过,转向下一条语句

(2)简单条件构造

①简单条件基本形式

是关系操作符<, <=, ==, >=, >, !=

③使用“=”表示赋值语句,使用“==”表示等于

④除数字外,字符或字符串也可以按照字典顺序用于条件比较

是布尔表达式,为bool类型

布尔值的真假以True和False表示

(3)二分支语法结构

If :

else:

程序6:

[python]view plain copy

1.# quadratic.py

2.# 计算二次方程的实数根程序

3.import math

4.def main():

5.print("Thisprogram finds the real solutions to a quadratic\n")

6. a,b,c =eval(input("Please enter the coefficients(a,b,c): "))

7. delta = b*b -4*a*c

8.if delta >= 0:

9. discRoot =math.sqrt(delta)

10. root1 = (-b +discRoot) / (2*a)

11. root2 = (-b -discRoot) / (2*a)

12.print("\nThe solutions are:", root1, root2)

13.else:

14.print("Theequation has no real roots!")

15.main()

【运行结果】

输出:

This program finds the real solutions to a quadratic

输入:Please enter the coefficients(a,b,c): 1,2,3 The equation has no real roots!

3.3 多分支

(1)多分支决策

要解决双根问题,就需要对delta等于0的情况进行处理。

语句的结构上要引入嵌套结构:

①当delta < 0,处理无实根情况

②当delta = 0,处理实根情况

③当delta > 0,处理双根情况

一种方案是在程序中使用两个if-else语句。

把一个复合语句放到另一个语句的结构之中称为嵌套。

1. 多分支决策是解决复杂问题的重要手段之一

2. 一个三分之决策可以由两个二分支结构嵌套实现

3. 使用if-else描述多分支决策时,

实现更多分支需要更多嵌套,影响程序易读性

Python使用if-elif-else描述多分支决策,简化分支结构的嵌套问题。格式如下:

If :

elif:

elif:

else:

例:程序7:

[python]view plain copy

1.# quadratic.py

2.import math

3.def main():

4.print("This program finds the realsolutions to a quadratic\n")

5. a,b,c =eval(input("Please enter the coefficients(a,b,c): "))

6. delta = b*b - 4*a*c

7.if a == 0:

8. x = -b/c

9.print("\nThere is ansolution", x)

10.elif delta < 0:

11.print("\nThe equation has no real roots!")

12.elif dalta == 0:

13. x = -b/(2*a)

14.print("\nTheere is a double rootat", x)

15.else:

16. discRoot = math.sqrt(delta)

17. root1 = (-b +discRoot) / (2*a)

18. root2 = (-b -discRoot) / (2*a)

19.print("\nThesolutions are:", root1, root2)

20.main()

3.4 异常处理

异常处理语句

python使用try…except…,可使程序不因运行错误而崩溃

Python的异常处理语句还可以使用else和finally关键字(可选项,若使用则else必须在finally之前)

格式如下:

try:

except:

except:

except:

else:

finally:

try…except可以捕捉任何类型的错误

对于二次方程,还会有其他可能的错误

如:输入非数值类型(NameError)

输入无效的表达式(SyntaxError)等

此时可以用一个try语句配多个except来实现

程序8:

[python]view plain copy

1.# 异常处理测试

2.def main():

3.try:

4. number1,number2 = eval(input("Enter two numbers,

5.separated by a comma:"))

6. result = number1/number2

7. exceptZeroDivisionError:

8.print("Division by zero!")

9. exceptSyntaxError:

10.print("Acomma may be missing in the input")

11.else:

12.print("Noexceptions, the result is", result)

13.finally:

14.print("executing the final clause")

15.main()

【运行结果】

输出:输入:Enter two numbers, separated by a comma: 1 2

A comma may be missing in the input executing the final clause

Enter two numbers, separated by a comma: 3,2 No exceptions, the result is 1.5

executing the final clause

Enter two numbers, separated by a comma: 3,0 Division by zero!

executing the final clause

?【实例】三者最大值

?【IPO】

输入:三个数值

处理:三者最大算法

输出:打印最大值

?【算法比较】

①通盘比较—将每一个值与其他所有值比较以确定最大值

三个值的情况比较简单,如果是五值比较复杂,而且效率低

(因为表达式没有被充分利用)

②决策树—避免冗余比较

结构更加复杂!

③顺序处理—逐个扫描每个值,保留最大者

【程序】程序9:

【运行结果】

How many numbers are there? 5

Enter a number >> 9

Enter a number >> 6

Enter a number >> 3

Enter a number >> 10

Enter a number >> 20

The largest value is 20

④使用Python内置函数max()

3.5 基本循环结构

(1)for循环

Python可以使用for语句循环遍历整个序列的值,格式如下:

在for循环中,循环变量var遍历了队列中的每一个值,循环变量var遍历了队列中的每一个值,循环语句体为每个值执行一次

例:for循环求平均数

?IPO:

输入:待输入数字个数,数字

处理:平均数算法

输出:平均数

通用设计方案:

o①输入数字的个数n

o②将sum初始化为0

o③循环n次:

?输入数字x

?将x加入sum中

o④将sum/n作为平均数输出出来

?程序10:

【运行结果】

How many numbers? 3

Enter a number >> 5

Enter a number >> 7

Enter a number >> 6

The average is 6.0

for循环的缺点:

程序开始时必须提供输入数字总数,以提供固定循环次数

大规模数字则需要用户数清楚个数

为此,python提供了另一种循环模式即无限循环,不需要提前知道循环次数

(2)while循环

语句格式:

条件总是在循环体执行之前被判断,这种结构又被称为前测循环(当型循环)

如果循环体没有对i初始化或循环体没有累加,条件判断一直为真,循环体将一直执行,即为死循环程序,这时通常使用Ctrl+C来终止一个程序

(3)break语句——退出循环

例:程序11:

【运行结果】

The number is 14

The sum is 105

(4)continue —结束本次循环

即跳出循环体中下面尚未执行的语句,对于while循环,继续求解循环条件;对于for循环,继续遍历循环列表

continue语句和break语句的区别:

continue语句只结束本次循环,而不终止整个循环的执行,而break语句则是直接结束整个循环流程,不再判断循环条件是否成立

(5)循环语句中的else —不满足循环条件时执行

3.6 通用循环构造方法

(1)交互式循环

交互式循环是无限循环的一种,允许用户通过交互的方式重复程序特定部分

(2)哨兵循环

执行循环直到遇到特定的值,循环语句才终止执行

设计方法:

①设定一个哨兵值作为循环终止的标志

②任何值都可以做哨兵,但要与实际数据有所区别

(3)文件循环

面向文件的方法是数据处理的典型应用,可以事先将数据录入到文件,便于编辑修改,python中采用readline()方法中的end of file循环模式

(4)循环嵌套

决策和循环互相嵌套可以实现复杂算法,假设数字以逗号分隔出现在文件的同一行上

(3)(4)整合程序如图:

3.7 死循环和循环嵌套

(1)死循环—无法靠自身的控制中止的循环

死循环的使用:通过死循环可以一直检测捕捉特定异常

(2)后测循环(直到型循环)

先接受输入,再判断循环条件是否满足。在Python中没有后测循环语句,但可以通过while和break语句间接实现,如:

(3)半路循环—循环判断条件在循环体的中部

例:

3.8 布尔表达式

条件语句和循环语句都使用布尔表达式作为条件

布尔值为真(True)或假(Flase)

(1)布尔操作符:and,or,not

and和or用于组合两个布尔表达式,并产生一个布尔结果

not运算符计算一个布尔表达式的反值

(2)布尔操作符的优先级:not > and > or

汇编语言程序设计试题A卷

陕西电子信息职业技术学院考试试卷(A) 2011至2012学年度第一学期 期末 班级: 09成教 课程: 汇编语言程序设计 题 号 一 二 三 四 五 合分人 分 数 总 分 (考试时间:120分钟 满分100分) 一、单项选择题(本大题共10小题,每小题2分,共20分) 1. 计算机硬件中最核心的部件是( )。 A. 运算器 B. 主存储器 C. CPU D. 输入 / 输出设备 2. 指令指针寄存器(IP )中存放的内容( )。 A. 指令 B. 指令地址 C. 操作数 D. 操作数地址 3. 寄存器间接寻址方式中,要寻找的操作数位于( )中。 A. 通用寄存器 B. 内存单元 C. 段寄存器 D. 堆栈 4. I/O 端口的编址方式分为统一编址和( )。 A. 独立编址 B. 选择编址 C. 设置编址 D. 控制编址 5. 汇编语言程序中可执行的指令位于( )中。 A. 数据段 B. 堆栈段 C. 代码段 D. 附加数据段 6. 循环结构设计中,要考虑的核心问题是( )。 A. 循环的控制 B. 选择循环结构 C. 设置循环参数初始值 D. 修改循环控制参数 7. 在汇编中用于管理和控制计算机相关功能的指令是( )。 A. 伪指令 B. 机器指令 C. 宏指令 D. 目标指令 班级 姓名 学号 — — — — — — — — — — — — — — — — 密 — — — — — — — — — 封 — — — — — — — — — — 线 — — — — — — — — — — — — — — — —

8. 识别中断源的方法包括查询中断和()共两种类型。 A. 指令中断 B. 故障中断 C. 矢量中断 D. 实时时钟中断 9. CPU与I/O设备之间需要传输的信息通常包括()、状态信息 和控制信息。 A. 编址信息 B. 格式信息 C. 中断信息 D. 数据信息 10. 一般情况下,汇编源程序应由数据段、()和代码段共三个逻 辑段组成。 A. 逻辑段 B. 堆栈段 C. 指令段 D. 类型段 二、名词解释(本大题共5小题,每小题4分,共20分) 11. 微处理器: 12. 寻址方式: 13. 伪指令: 14. 中断源:

汇编语言程序设计(第四版)第3章【课后答案】

汇编语言程序设计第四版 【课后习题答案】--囮裑為檤 第3章汇编语言程序格式 〔习题3.1〕伪指令语句与硬指令语句的本质区别是什么?伪指令有什么主要作用? 〔解答〕 伪指令语句与硬指令语句的本质区别是能不能产生CPU动作; 伪指令的作用是完成对如存储模式、主存变量、子程序、宏及段定义等很多不产生CPU动作的说明,并在程序执行前由汇编程序完成处理。 〔习题3.2〕什么是标识符,汇编程序中标识符怎样组成? 〔解答〕 为了某种需要,每种程序语言都规定了在程序里如何描述名字,程序语言的名字通常被称为标识符; 汇编语言中的标识符一般最多由31个字母、数字及规定的特殊符号(如-,$,?,@)组成,不能以数字开头。 〔习题3.3〕什么是保留字,汇编语言的保留字有哪些类型,并举例说明。 〔解答 保留字是在每种语言中规定了有特殊意义和功能的不允许再做其它用处的字符串;汇编语言的保留字主要有硬指令助记、伪指令助记符、运算符、寄存器名以及预定义符号等。汇编语言对大小写不敏感。如定义字节数和字符串的DB就是伪指令助记符。 〔习题3.4〕汇编语句有哪两种,每个语句由哪4个部分组成? 〔解答〕 汇编语句有执行性语句和说明性语句; 执行性语句由标号、硬指令助记符、操作数和注释四部分组成; 说明性语句由名字、伪指令助记符、参数和注释四部分组成 〔习题3.5〕汇编语言程序的开发有哪4个步骤,分别利用什么程序完成、产生什么输出文件。 〔解答〕 ⒈编辑文本编辑程序汇编语言源程序.asm ⒉汇编汇编程序目标模块文件.obj ⒊连接连接程序可执行文件.exe或.com

⒋调试调试程序应用程序 〔习题3.6〕区分下列概念: (1)变量和标号 (2)数值表达式和地址表达式 (3)符号常量和字符串常量 〔解答〕 (1)变量是在程序运行过程中,其值可以被改变的量;标号是由用户自定义的标识符,指向存储单元,表示其存储内容的逻辑地址。 (2)数值表达式一般是由运算符连接的各种常数所构成的表达式,地址表达式是由名字、标号以及利用各种的操作符形成的表达式。 (3)在程序中,为了使常量更便于使用和阅读,经常将一些常量用常量定义语句定义为符号常量,被一对双引号括起来的若干个字符组成的字符序列被称为字符串常量。 〔习题3.7〕假设myword是一个字变量,mybyte1和mybyte2是两个字节变量,指出下列语句中的错误原因。 (1)mov byte ptr [bx],1000 (2)mov bx,offset myword[si] (3)cmp mybyte1,mybyte2 (4)mov al,mybyte1+mybyte2 (5)sub al,myword (6)jnz myword 〔解答〕 (1)1000超出了一个字节范围 (2)寄存器的值只有程序执行时才能确定,而offset是汇编过程计算的偏移地址,故无法确定,改为lea bx,myword[si] (3)两个都是存储单元,指令不允许 (4)变量值只有执行时才确定,汇编过程不能计算 (5)字节量AL与字量myword,类型不匹配 (6)Jcc指令只有相对寻址方式,不支持间接寻址方式 〔习题3.8〕OPR1是一个常量,问下列语句中两个AND操作有什么区别? AND AL,OPR1 AND 0feh 〔解答〕

【汇编语言程序设计】试题及答案合集

《汇编语言程序设计试题及答案》合集 汇编语言程序设计试题及答案 1.对于有符号的数来说,下列哪个值最大(D) A:0F8H B:11010011B C:82 D:123Q 2.下列有关汇编语言中标号的命名规则中,错误的是(D) A:通常由字母打头的字符、数字串组成 B:标号长度不能超过31个字符 C:?和$不能单独作为标号 D:.号不可位于标号首 3.8088/8086存储器分段,每个段不超过(D ) A.64K个字 B.32K个字节 C.1兆个字节 D.64K个字节 4.寻址指令MOV CX, [BX + DI + 20]使用的是哪一种寻址方式(B)A:寄存器寻址B:相对基址变址寻址 C:变址寻址D:基址变址寻址 5.若AX= - 15要得到AX=15应执行的指令是(A ) A.NEG AX B.NOT AX C.INC AX D.DEC AX 6.8086/8088系统执行传送指令MOV时( A) A.不影响标志位 B.影响DF方向标志 C.影响SF符号标志 D.影响CF进位标志 7.若要求一个操作数中的若干位维持不变,若干位置?1?,可以使用(B)A:NOT B:OR C:AND D:XOR 8.下列指令中段默认为堆栈段的是( C) A.MOV AX,[BX+SI+10] B.ADD AX,ES:[SI] C.SUB [BX],[BP][DI] D. MOV DX,[1000H] 9.关于8086/8088微机系列,下列说法哪个是正确的(D) A:一个存储单元由16个二进制位组成,简称字。

B:当存储一个字数据时,低字节放高地址位,高字节放低地址位。 C:在内存空间中,可以无限分配段,且段的大小不受限制。 D:段与段之间可以邻接,也可以重叠。 10.下列关于堆栈的说法,错误的是(D) A:以?先入后出?为原则。 B:栈区最高地址单元的前一个单元为栈底。 C:运行中SP寄存器动态跟踪栈顶位置。 D:压栈和弹出都是以字节为单位。 11.表示过程定义结束的伪指令是( A) A.ENDP B.ENDS C.END D.ENDM 12.BUF1 DB 3 DUP(0,2 DUP (1,2),3) COUNT EQU $-BUF1 符号COUNT等价的值是( B) A.6 B.18 C.16 D.9 13.下列标志位中,可以用来判断计算结果正负的是(B) A:PF B:SF C:DF D:OF 14.下列指令正确的是( CD) A. MOV [100H], [BX] B.MOV DS, ES C. ADD V[BX], CX D.MOV AX, 34H 15.下列哪个寄存器是属于指针寄存器(C) A:SI B:DX C:SP D:ES 二、填空题 (每小题4 分,共 20 分) 1.下列程序段求数组FLD的平均值,结果在AL中。请将程序填写完整(不考虑溢出) FLD DW 10, -20, 30, -60, -71, 80, 79, 56 _LEA SI,FLD______ MOV CX, 8 XOR AX, AX

汇编语言程序设计习题集111

16.提示下列指令序列执行后的正确结果是( A )。 MOV BX,OFFFCH MOV CL,2 SAR BX,CL A.3FFFH B.0FFFH C.0FFFCH D.0FFF5H 19. 指令SCAS的寻址方式是()。 A 源操作数为寄存器寻址,目的操作数为寄存器间接寻址 B 源操作数为寄存器间接寻址,目的操作数为寄存器间接寻址 C 源操作数为寄存器间接寻址,目的操作数为寄存器寻址 D 源操作数为寄存器寻址,目的操作数为寄存器寻址 22. 下列指令中不合法的指令是(C)。 A IN AX, 03F8H B MOV BX, AX C REP CMPSB D SHR BX, CL 23. 下列指令中正确的是()。 A MOV SS, 2400H B MOV SS, [2400H] C MOV SS, DS D MOV SS, SP 24. 下列指令中正确的是(A)。 A XCHG AH, AL B XCHG AL, 20H C XCHG DS, AX D XCHG SP, [20H] 29. 下列程序段执行完后,BX寄存器中的内容是( C )。 MOV CL, 3 MOV BX, 0B7H ROL BX, 1 ROR BX, CL A 002DH B 00EDH C C02DH D 000DH 30. 执行下列程序: MOV AX, 0 MOV BX, 1 MOV CX, 100 A: ADD AX, BX INC BX LOOP A HLT 执行后的结果为:(AX)= ( C ),(BX)= ( ). A 5050,99 B 2500,100 C 5050,101 D 2550,102 35. 逻辑位移指令SHR用于(D),而算术位移指令SAR用于带符号数除2。

汇编语言程序设计教程(第3版 卜艳萍)参考答案

汇编语言程序设计教程(第3版) 习题参考答案 第1章汇编语言基础知识 思考与练习 1.计算机系统分哪几个层次?简述计算机系统的硬件结构。 1)数字逻辑层 2) 微体系结构层 3) 指令系统层 4) 操作系统层 5) 汇编语言层 6) 高级语言层 7) 应用层 硬件系统是指构成计算机系统的物理实体或物理装置。它由控制器、运算器、存储器、输入设备和输出设备等部件构成。 2.简述用汇编语言进行程序设计的必要性。 1)程序要具有较快的执行时间,或者只能占用较小的存储容量。例如,操作系统的核 心程序段,实时控制系统的软件,智能仪器仪表的控制程序等。 2)程序与计算机硬件密切相关,程序要直接、有效地控制硬件。例如,I/O接口电路 的初始化程序段,外部设备的低层驱动程序等。 3)大型软件需要提高性能、优化处理的部分。例如计算机系统频繁调用的子程序、动 态连接库等。 4)没有合适的高级语言或只能采用汇编语言的时候。例如,开发最新的处理器程序时, 暂时没有支持新指令的编译程序。 5)汇编语言还有许多实际应用,例如分析具体系统尤其是该系统的低层软件、加密解 密软件、分析和防治计算机病毒等。 3.汉字编码主要分哪几类?每类的功能如何? 汉字编码主要分为四类:汉字输入码、汉字交换码、汉字机内码和汉字字形码。 1)为了能直接使用西文标准键盘进行输入,就必须为汉字设计相应的编码方法,即用 西文标准键盘上的字母数字串表示汉字的编码。目前,汉字输入编码方法主要有三 种:数字编码、拼音编码和字形编码。 2)汉字交换码:在不同汉字信息处理系统间进行汉字交换时所使用的编码,就是国标 码。无论采用哪种方法输入汉字,一旦输入到计算机中,必须采用统一的国标码标 识每个汉字。 3)汉字机内码是汉字在设备或信息处理系统内部最基本的表达形式,是在设备和信息 处理系统内部存储、处理、传输汉字用的编码。 4)字形编码也称为字模码,是用点阵表示的汉字字形代码,它是汉字的输出形式。4.计算机的字长是怎么定义的,试举例说明。 计算机能同时处理二进制信息的位宽定义为计算机的字长。如8086能同时进行16位二进制数据的运算、存储和传输等操作,该机器的字长为16位。 5.在汇编语言中,如何表示二进制、八进制、十进制和十六进制的数值? 用相应进制的数值加上进制标记即可。

汇编语言程序设计

汇编语言程序设计 一、选择题 (共72题) 1、 用于指针及变址寄存器的有()。 A、 AX,BX,CX,DX B、 SP,BP,IP C、 CS,DS,SS D、 PSW 考生答案:B 2、 完成把汇编语言源程序模块转换为目标模块的程序是()。 A、 编辑程序 B、 汇编程序 C、 连接程序 D、 调试程序 考生答案:B 3、 指令JMP FAR PTR DONE中的寻址方式属于()。 A、 段内转移直接寻址 B、 段内转移间接寻址 C、 段间转移直接寻址 D、 段间转移间接寻址 考生答案:C 4、 对于下列程序段: AGAIN:MOV AL,[SI]

MOV ES:[DI],AL INC SI INC DI LOOP AGAIN 也可用()指令完成同样的功能。 A、 REP MOVSB B、 REP LODSB C、 REP STOSB D、 REPE SCASB 考生答案:A 5、 在程序执行过程中,IP寄存器中始终保存的是()。 A、 上一条指令的首地址 B、 下一条指令的首地址 C、 正在执行指令的首地址 D、 需计算有效地址后才能确定地址 考生答案:B 6、 在汇编语言程序的开发过程中使用宏功能的顺序是()。 A、 宏定义,宏调用 B、 宏定义,宏展开 C、 宏定义,宏调用,宏展开 D、 宏定义,宏展开,宏调用 考生答案:C 7、 CPU要访问的某一存储单元的实际地址称()。 A、 段地址

偏移地址 C、 物理地址 D、 逻辑地址 考生答案:C 8、 AND、OR、XOR、NOT为四条逻辑运算指令,下面解释正确的是()。 A、 指令XOR AX,AX执行后,AX内容不变,但设置了标志位 B、 指令OR DX,1000H执行后,将DX最高位置1,其余各位置0 C、 指令AND AX,OFH执行后,分离出AL低四位 D、 NOT AX,执行后,将AX清0 考生答案:C 9、 完成对CL寄存器的内容乘以2的正确操作是()。 A、 ROL CL,1 B、 MUL 2 C、 SHL CL,1 D、 SHR CL,1 考生答案:C 10、 检查两个无符号数的关系,若要实现AL≥BL时分支去LOP1处,那么在“CMP A L,BL”指令后应跟的分支指令是()。 A、 JE LOP1 B、 JAE LOP1 C、 JC LOP1 D、 JGE LOP1 考生答案:B 11、 已知变量VAR为字型,则TYPEVAR=()。

python语言程序设计

《python语言程序设计实验》课程教学大纲课程编码:12120801603 课程性质:实验实训课 学分:3 课时:54 开课学期:3 适用专业:电子商务 一、课程简介 《Python语言程序设计》是电子商务专业的实验课程,该课程是系列Python课程的基础课程,掌握该门课程才能学好使用Python进行人工智能,网络数据采集,数据分析,网站建设等具体内容。有助于提高学生的程序编写能力与程序语言认识能力。 二、教学目标 通过本课程的教学应实现以下目标: 了解该课程的基本框架,python程序语言的特点,python程序语言的应用范围; 理解python的基本数据类型与基本语言结构,理解类与模块; 掌握程序语言的编写特点,能够写出简单的程序,掌握代码复用。 三、实验项目与课时分配

四、实验条件 五、实验内容及要求

六、实验报告 实验报告内容有:实验名称、目的、内容、原理、实验步骤、实验记录、数据处理(实验现象描述、原理论证、结构说明、误差分析等)、讨论等。 七、考核办法和成绩评定 1.考核方式:笔试 2.成绩评定:实验总评成绩=平时考核成绩×30%+期末考核×70% 八、推荐实验指导书 1.《Python语言及其应用》,卢布诺维克(Bill Lubanovic),人民邮电出版社,2015年。 2.《Python编程从入门到实践》,[美] 埃里克·马瑟斯(Eric Matthes)著;袁国忠译,人民邮电出版社,2016年 3.《Python零基础入门学习》,李佳宇著,清华大学出版社,2016 大纲制订人:杜亚敏 大纲审定人:黄铭 制订时间: 2017 年 9 月 1 日

汇编语言程序设计A卷答案

2011级汇编语言程序设计课程试题(A卷答案) 一、填空题(毎空1分,共15分) 1.汇编语言程序/汇编语言源程序,ASM,平展(flat) 2.执行性语句(硬指令),说明性语句(伪指令) 3.立即数,寄存器,存储器 4.导入,动态连接 5.PUSH EBX 6.嵌入汇编,模块连接 7.8,6,16 二、判断题(每题1分,共10分) 1.错2.对3.对4.对5.错6.对7.对8.错9.对10.错 三、按下面要求写出相应的数据定义语句或汇编指令(变量名可任意指定)(每小题2分,共12分) 1.string byte ‘assembly language’ 2.var word 20 dup (?) 3.str equ 4.dvar dword 14h 5.add [ebx+esi],eax 6.xor eax,eax 或sub eax,eax 四、程序分析与阅读题 1.(每空1分,共8分) EAX=87654321h EBX=12345678h EAX=876543a9h CF=1 OF=0 ZF=0 SF=1 PF=1 2.(每小题2分,共8分)每一小题指出错误得1分,写出正确指令得1分 ①操作数类型不一致add eax,ebx 或add ax,bx ②两个操作数同时是内存单元的数mov eax,var2 mov var1,eax ③push指令不支持字节操作push ax 或push eax ④两个操作数类型不明确mov byte ptr [ebx],100 或mov word ptr [ebx],100 或mov dword ptr [ebx],100 3.(每小题2分,共4分) ①xchg ebx,[edi] 或xchg [edi],ebx ②movsb

实验一基础汇编语言程序设计

实验一基础汇编语言程序设计 实验目的 1.学习和了解TEC-XP十六位机监控命令的用法; 2.学习和了解TEC-XP十六位机的指令系统; 3.学习简单的TEC-XP十六位机汇编程序设计。 实验内容 1.使用监控程序的R命令显示/修改寄存器内容、D命令显示存储器内容、E命令修改存储器内容; 2.使用A命令写一小段汇编程序,U命令反汇编刚输入的程序,用G命令连续运行该程序,用T、P命令单步运行并观察程序单步执行情况。 3.学习联机使用TEC-XP教学试验系统和仿真终端软件。 实验要求 在使用该教学机之前,应先熟悉教学机的各个组成部分及其使用方法。 实验步骤 1.关闭电源,将大板上的COMl口与PC机的串口相连; 2.接通电源,在PC机上运行PCEC.EXE文件,设置所用PC机的串口为“l”或“2”,其它的设置一般不用改动,直接回车即可; 3.置控制开关为001110(连续、内存读指令、组合逻辑、16位、联机),开关拨向上方表示“1”,拨向下方表示“0”,“X”表示任意。其它实验相同; 4.按一下“RESET”按键,再按一下“START”’按键,主机上显示: 5.用R命令查看寄存器内容或修改寄存器的内容 1.用R命令查看寄存器或修改寄存器内容 1)在命令行提示符状态下输入: R↙;显示寄存器的内容 注:寄存器的内容在运行程序或执行命令后会发生变化。

2)在命令行提示符状态下输入: R R0↙;修改寄存器R0的内容,被修改的寄存器与所赋值之间可以无空格, 也可有—个或数个空格 主机显示: 寄存器原值:xxxx 在后面输入新的值0036 再用R命令显示寄存器内容,则R0的内容变为0036。 2.用D命令显示存储器内容 在命令行提示符状态下输入: D 2000↙ 会显示从2000H地址开始的连续128个字的内容; 连续使用不带参数的D命令,起始地址会自动加128(即80H)。

Python语言程序设计(美-梁勇)第4章习题解答(英文)

Chapter 4 Selections 1. <, <=, ==, !=, >, >= 2. Yes. i becomes 1, j becomes 0, b1 becomes True, and b2 becomes Flase. 3. random.randrange(0, 20) or random.randint(0, 19) 4. random.randrange(10, 20) or random.randint(10, 19) 5. random.randrange(10, 50 + 1) or random.randint(10, 50) 6. random.randrange(0, 2) or random.randint(0, 1) 7. if y > 0: x = 1 8. if score > 90: pay *= 1.03 9. if score > 90: pay *= 1.03 else: pay *= 1.01 10. If number is 30, (a) displays 30 is even 30 is odd (b) displays 30 is even If number is 35, (a) displays 35 is odd (b) displays

35 is odd 11. Note: else matches the second if clause. The output is “x is 3” if x = 3 and y = 2. The o utput is “z is 7” if if x = 3 and y = 4. No output if if x = 2 and y = 2. 12. Note: else matches the first if clause. The output is “x is 2” if x = 2 and y = 4. No output if if x = 3 and y = 2.The output is “z is 6” if if x = 3 and y = 3. 13.

汇编语言程序设计

汇编语言程序设计 实验报告 实验名称上机过程及顺序结构与分支结构程序设计实验班级 学号 姓名 日期2017年10月26号 成绩 评阅人 软件学院

一、实验目的与意义 理解并熟练掌握汇编语言程序设计过程中的编辑、汇编、链接和调试等各个步骤,提高对汇编课程内容的理解和汇编语言的掌握,通过上机练习加深对课程内容的理解和掌握。通过汇编语言编制的程序上机调试、运行检验程序设计是否正确。熟悉和掌握编辑、汇编、连接和调试四个实用程序的使用方法,掌握调试程序中的几个常用命令的使用方法。熟悉其基本的指令操作,debug调试操作命令以及分支结构、顺序结构和循环结构的程序设计。 二、实验环境 操作系统:Microsoft Windows8 集成环境:Masm for Windows 上机地点:信息楼B405教室 三、实验的预习内容 预习的主要内容: 1. 使用DEBUG命令的方法; 2. 熟悉掌握从理论上定义数据的类型(即DB,DW,DD,); 3. 分支结构和顺序结构的步骤以及相关的指令; 4. 常用的标志位状态及相应的作用; 实验思路: 在对题目进行分析后,分析出解题方法,并做出与实验思路相对应的程序框图。依照程序框图的内容输入相对应的代码,最终在调试代码后,发现并解决一系列的汇编语言错误。进一步优化算法。实验之前必须了解十进制、十六进制和ASCII码之间的转换。预习查表法相关命令,掌握顺序程序的结构,从键盘输入数据的命令及显示到屏幕上的命令。 实验一: 题目1:将程序编辑、汇编、连接并通过集成环境中的debug调试,观察运行结果;用E命令修改指定地址的数据,再用G命令执行程序查看变化,用A 命令将加法指令修改成减法指令,再将其编译运行,查看寄存器值变化的异同。 题目2:分别用DB、DW和DD数据段9H,0FAH,41H,27H,编译链接之后生成exe文件,再用debug的r命令找到数据段地址,用d命令指定数据段地址,观察汇编后在机器内部对应的存储情况。 实验二: 先设置数据段地址和堆栈段地址;设置堆栈段指针;读取一个字符然后存储在AL中;用BX来存储AL中字符对应的数值;将BX中的值作为偏移地址;并在数据段中查找对应字符串;最终输出结果结束程序。 实验三: 先初始化数据段地址与堆栈段地址;设置堆栈段指针;然后将数据段中的data1放入AL中;读取数据段中的data2并判断data2是否大于0;然后读取数

新版汇编语言程序设计钱晓捷第1章习题答案

第1章汇编语言基础知识(全) 2010-10-18 19:32:40| 分类:答案集锦| 标签:|字号大中小订阅 第1章汇编语言基础知识 〔习题1.1〕简述计算机系统的硬件组成及各部分作用。 〔解答〕 CPU:包括运算器、控制器和寄存器组。运算器执行所有的算术和逻辑运算;控制器负责把指指令逐条从存储器中取出,经译码分析后向机器发出各种控制命令,并正确完成程序所要求的功能;寄存器组为 处理单元提供所需要的数据。 存储器:是计算机的记忆部件,它用来存放程序以及程序中所涉及的数据。 外部设备:实现人机交换和机间的通信。 〔习题1.2〕明确下列概念或符号: 主存和辅存,RAM和ROM,存储器地址和I/O端口,KB、MB、GB和TB 〔解答〕 主存又称内存是主存储器的简称,主存储器存放当前正在执行的程序和使用的数据,CPU可以直接存取,它由半导体存储器芯片构成其成本高、容量小、但速度快。辅存是辅助存储器的简称,辅存可用来长期保存大量程序和数据,CPU需要通过I/O接口访问,它由磁盘或光盘构成,其成本低、容量大,但速 度慢。 RAM是随机存取存储器的英语简写,由于CPU可以从RAM读信息,也可以向RAM写入信息,所以RAM也被称为读写存储器,RAM型半导体存储器可以按地址随机读写,但这类存储器在断电后不能保存信息;而ROM中的信息只能被读出,不能被修改,ROM型半导体通常只能被读出,但这类存储器断电 后能保存信息。 存储器由大量存储单元组成。为了区别每个单元,我们将它们编号,于是,每个存储单元就有了一个存储地址,I/O接口是由一组寄存器组成,为了区别它们,各个寄存器进行了编号,形成I/O地址,通常 称做I/O端口。 KB是千字节、MB是兆字节、GB是吉字节和TB是太字节,它们都是表示存储器存储单元的单位。 〔习题1.3〕什么是汇编语言源程序、汇编程序、目标程序? 〔解答〕 用汇编语言书写的程序就称为汇编语言源程序;完成汇编工作的程序就是汇编程序;由汇编程序编 译通过的程序就是目标程序。

汇编语言程序设计方案考试考试集

汇编语言程序设计方案考试考试集第四章汇编语言程序设计习题集 一、单项选择题 1.用高级语言编写的程序()。 A.只能在基本种计算机上运行 B.无需经过编译或解释,即可被计算机直接执行 C.具有通用性和可移植性 D.几乎不占用内存空间 2.一般地,我们将计算机指令的集合称为()。A.机器语言 B.汇编语言 C.模拟语言 D.仿真语言 3.我们通常所说的“裸机”指的是()。 A.只装备有操作系统的计算机 B.不带输入输出设备的计算机 C.未装备任何软件的计算机 D.计算机主机暴露在外 4.计算机的软件系统一般分为()两大部分。 A.系统软件和应用软件 B.操作系统和计算机语言 C.程序和数据 D.DOS和Windows 5.计算机系统软件中的汇编程序是一种()。 A.汇编语言程序

B.编辑程序 C.翻译程序 D.将高级语言转换成汇编程序的程序 6.假设V1和V2是用DW定义的变量,下列指令中正确的是:() A.MOV V1,20H B.MOV V1,V2 C.MOV AL,V1 D.MOV2000H,V2 7.PC机所使用的标准键盘向主机发送的代码是() A.ASCII码 B.扫描码 C.BCD码 D.格雷码 8.8086CPU中断号为8的中断矢量存放在()。 A.0FFFFH:0008H B.0000H:0008H C.0000H:0020H D.0020H:0000H 9.已知变量VAR为字型,则TYPE VAR=()。 A.1 B.2 C.3 D.4 10.汇编语言源程序经MASM汇编后可直接生成的文件是()。

B..CRF C..EXE D..OBJ E..ASM F..MAP 11.段定义语句以(B)语句结束。 A.END B.ENDS C.ENDP D.ENDM 12.若主程序段中数据段名为DA TA,对数据段的初始化操作应为()。 A.MOV AX,DATA B.MOV AX,DA TA MOV ES,AX MOV DS,AX C.PUSH DS D.MOV DS,DATA 13..EXE文件产生在()之后。 A.汇编 B.编辑 C.用软件转换

二级Python语言程序设计考试笔记

二级Python语言程序设计考试笔记 根据《全国计算机等级考试二级Python语言程序设计考试大纲2018 年版)》编写 编者:吴海锋 目录 一、Python语言基本语法元素 (2) 1、程序的基本语法元素 (2) 2、基本输入输出函数 (3) 3、源程序的书写风格 (3) 4、Python语言的特点 (3) 二、基本数据类型 (4) 1、数字类型 (4) 2、数字类型的运算 (5) 3、字符串类型及格式化 (5) 4、字符串类型的操作 (6) 5、类型判断和类型间转换 (7) 三、程序的控制结构 (8) 1、程序流程图 (8) 2、程序的分支结构 (9) 3、程序的循环结构 (10) 4、程序的异常处理 (10) 四、函数和代码复用 (11) 1、函数的定义和使用 (11) 2、函数的参数传递 (11) 3、变量的作用域 (11) 五、组合数据类型 (12) 1、组合数据类型的基本概念 (12) 2、集合类型 (12) 3、序列类型 (13) 4、列表类型 (14) 5、字典类型 (15) 6、字典类型的操作 (15) 六、文件和数据格式化 (17) 1、文件的使用 (17) 2、数据组织的维度 (18) 3、一维数据的处理 (18) 4、二维数据的处理 (19) 5、采用CSV格式对一二维数据文件的读写 (19) 七、Python计算生态 (20) 1、标准库 (20) 2、基本的Python内置函数 (20) 3、第三方库的获取和安装 (20) 4、第三方库 (20) 5、更广泛的Python计算生态 (21)

一、Python语言基本语法元素 1、程序的基本语法元素 1)程序的格式框架 2)缩进。 缩进指每一行代码开始前的空白区域,用来表示代码之间的包含和层次关系。 1个缩进= 4个空格。 缩进是Python语言中表明程序框架的唯一手段。 当表达分支、循环、函数、类等程序含义时,在if、while、for、def、class等保留字所在完整语句后通过英文冒号(:)结尾并在之后进行缩进,表明后续代码与紧邻无缩进语句的所属关系。3)注释 采用#表示一行注释的开始,多行注释需要在每行开始都使用#。 4)变量 变量是保存和表示数据值的一种语法元素。 变量的值是可以改变的,能够通过赋值(使用等号= 表达)方式被修改。

汇编语言程序设计

实验四程序设计 一、实验目的 学习数据传送指令和算术运算指令的用法;掌握数据定义伪指令的格式,会用DEBUG 中的D命令观察DB、DW、DD存储数据的格式;熟悉汇编语言的基本框架,掌握编写汇编语言程序的基本方法。 二、实验题 1、已知当前数据段中DADT1和DADT2开始分别存放若干字节数据,数据个数相同,编制程序检查两数据块中数据是否相同,若相同,则在屏幕上显示1,否则显示0。 【参考程序如下】 DSEG SEGMENT DATA1 DB 'ABCDEFG3' DATA2 DB 'ABCDEF3G' CNT DW 8 DSEG ENDS CSEG SEGMENT ASSUME CS:CSEG,DS:DSEG START:MOV AX,DSEG MOV DS,AX MOV DL,31H LEA SI,DATA1 LEA DI,DATA2 MOV CX,CNT DEC SI DEC DI AGAIN:INC SI INC DI MOV AL,[SI] CMP AL,[DI] LOOPZ AGAIN JZ DISP DEC DL DISP: MOV AH,2

INT 21H MOV AH,4CH INT 21H CSEG ENDS END START 阅读程序,理解循环程序结构及执行过程,并改成串指令实现。 2 编写程序,将00H~0FH共16个数写入内存3000H开始的连续16个存储单元中。 三、实验报告 写出程序清单,记录运行结果。 改写串指令实现: DSEG SEGMENT DATA1 DB'ABCDEFG3' DATA2 DB'ABCDEF3G' CNT DW8 DSEG ENDS CSEG SEGMENT ASSUME CS:CSEG,DS:DSEG START:MOV AX,DSEG MOV DS,AX MOV ES,AX MOV DL,31H LEA SI,DATA1 LEA DI,DATA2 MOV CX,CNT CLD

Python语言程序设计(美-梁勇)第5章习题解答(英文)

Chapter 5 Loops 1. count < 100 is always True at Point A. count < 100 is always False at Point C. count < 100 is sometimes True or sometimes False at Point B. 2. It would be wrong if it is initialized to a value between 0 and 100, because it could be the number you attempt to guess. When the initial guess value and random number are equal, the loop will never be executed. 3. (a) Infinite number of times. (b) Infinite number of times. (c) The loop body is executed nine times. The printout is 2, 4, 6, 8 on separate lines. 4. (a) and (b) are infinite loops, (c) has an indentation error. 5. max is 5 number 0 6. sum is 14 count is 4 7. Yes. The advantages of for loops are simplicity and readability. Compilers can produce more efficient code for the for loop than for the corresponding while loop. 8. while loop: sum = 0 i= 0 while i <= 1000: sum += i i += 1 9. Can you always convert a while loop into a for loop? Not in Python. For example, you cannot convert the while loop in Listing 5.3, GuessNumber.py, to a for loop.

汇编语言程序设计——知识点-v3.0

第一章 1、什么是汇编语言? 2、汇编语言程序设计过程:编辑源程序,编译(汇编),连接,运行调试 3、汇编语言特点?与机器语言一一对应,直接操作硬件,高效率(空间和时间,运行速度快,目标代码短,占用存储空间少) 4、数制转换 第2章8086计算机组织结构 1、计算机硬件系统组成:CPU、存储器、输入输出设备。 2、CPU组成:运算器、控制器、寄存器,运算器和控制器由芯片设计时设计好,不可做任何改动,程序设计员仅能在程序里使用寄存器,寄存器都有相应的名字,如AX,能在程序里直接使用寄存器是汇编语言区别于高级语言的最重要特点,这样就可以直接控制硬件系统。 3、总线结构:数据总线、地址总线、控制总线。数据总线分8位、16位、32位和64位等,多少位机就是以数据总线来划分,比如8位机、32位机。8086机是16位机,但地址总线是20位,地址总线数量决定了内存寻址空间的大小,如8086有20位地址线,那么寻址空间是:220=210*1K=1M,8086最大寻址空间为1MB,即地址范围:00000H~FFFFFH。控制总线主要传送控制信息,如读写操作,读写操作的主体是CPU,读操作是指CPU从内存或外设读取数据,写操作是指CPU把数据写到内存或外设中。 4、存储器:存储器的最小单元是字节(Byte,由8个位组成),字节的多少就是存储器的容量。每一个字节单元都有一个唯一的编号,这个编号就是字节单元的地址,此地址就是物理地址,对于8086而言,编号的形式为:XXXXXH,如85421H。如果要读写存储器,必须知道某一个字节单元的地址。多个字节单元可以组合成更大的单元(数),比如2个字节单元组合成一个字(Word),4个字节单元组合成一个双字(Double Word)等,规定:这个组合后的大单元是以最小字节单元地址为自己的地址。如85421H字节单元内容为12H,85422H 字节单元内容为34H,那么以85421H地址的字单元的内容就是3412H。 地址取最小字节单元的地址为大单元的地址。 内容排序按照“高高低低”原则:高字节放在高地址里,低字节放在低地址里。 详细请参看2.3节(P30页) 5、8086CPU寄存器 (1)通用类:AX(AH,AL)、BX(BH,BL)、CX(CH,CL)、DX(DH,DL) (2)段寄存器类:CS、DS、ES、SS (3)与偏移地址相关类:SI、DI、SP、BP (4)特殊类:IP、FLAGS 所有寄存器都是16位大小,通用类的16位又可看成2个8位的寄存器组成,区分为高8位(High)和低8位(Low),因此取名为AH和AL,其他类似。 CS:存放代码段段地址,DS:存放数据段段地址,SS:存放堆栈段段地址,ES:存放数据附加段段地址,一般作为DS的辅助使用,比如在一段程序里需要用到2个不同数据段的数据时,其中一个数据段段地址存放在DS中,另一个存放在ES中。 SI、DI:一般用于变址寻址方式,如[BX+SI]、[BX+DI], SP:堆栈段中堆栈栈顶的偏移地址,不可修改,由SS:SP逻辑地址始终指向堆栈的栈顶。 详细参看2.3.2,P32页 BP:一般也用于堆栈,可以作为SP的备份,通常也是用SS:BP逻辑地址表示,BP可以随意修改,因此通过SS:BP可以访问堆栈的任何地方。此外,BP还与BX一样,可以作为基地址

汇编语言程序设计第3阶段测试题

江南大学现代远程教育上半年第三阶段测试卷A 考试科目:《汇编语言程序设计》第5章至第7章(总分100分)时间:90分钟______________学习中心(教学点)批次:层次: 专业:学号:身份证号: 姓名:得分: 一、单选题(每题3分,共24分) 1.设某子程序使用的返回指令是RET 4,则返回地址为__________ A.CALL指令下面第4条指令的地址 B.CALL指令下面第2条指令的地址 C.(SP+1)和(SP)中存放的地址 D.(SP+5)和(SP+4)中存放的地址 2. 执行CALL FAR PTR SUB1指令后,在堆栈区域中应__________ A.弹出两个字节的内容B.压入两个字节的内容 C.压入四个字节的内容D.弹出四个字节的内容 3、对于下列要求,若用汇编语言设计,其中必须采用循环结构来完成的是 A.拆字(将某一存贮单元中的内容拆成两个BCD码) B.比较两个带符号数的大小 C.延时1秒种 D.查表 4、已知中断类型号为0BH,则其中断服务程序入口地址存放在中断矢量表中的地址是 A.CS:000BH B.0000:000BH C.CS:002CH D.0000:002CH 5、在汇编语言程序的开发过程中使用宏功能的顺序是 A、宏定义,宏调用 B、宏定义,宏展开 C、宏定义,宏调用,宏展开 D、宏定义,宏展开,宏调用 6、循环指令LOOPNZ终止循环的条件是 A、CX=0,且ZF=0 B、CX=0,或ZF=1 C、CX≠0,且ZF=0 D、CX≠0,或ZF=1

7.已知RET指令是属性为NEAR子程序中的返回指令,执行RET之前SP=100H,执行后SP的内容为。 A.100H B.102H C.98H D.0FEH 8.伪指令用来指定宏局部标号。 A.PUBLIC B.LOCAL C.EXTRN D.ASSUME 二、阅读下列程序,并回答问题(每题10分,共30分) 1. 有下列程序段: BUF DB 0CH MOV AL,BUF CALL FAR PTR HECA . . HECA PROC FAR CMP AL,10 JC Kl ADD AL,7 K1:ADD AL,30H MOV DL,AL MOV AH,2 INT 21H RET HECA ENDP 问:程序执行后,DL=?屏幕上显示输出的字符是什么? 2、阅读下列程序 MOV AL,38H MOV BL,49H CALL SUBO INC AL DEC CL ┇ SUBO PROC ADD AL,BL MOV CL,AL DAA RET SUBO ENDP 上述程序段运行后,(AL)=_________,(CL)=_________ 3、设程序中的MM为一带符号数,阅读下列程序并回答下列问题 程序:DA TA SEGMENT BUF1 DB MM BUF2 DB ? DA TA ENDS

汇编语言程序设计A卷

2011级 汇编语言程序设计 课程试题(A卷) 1.用汇编语言书写的程序叫做,MASM要求该文件的扩展名是,编写32位Windows应用程序应选择存储模型。2.汇编语言语句有两种,分别是和。3.除外设数据外的数据寻址方式有3类,分别称为、 和寻址。 4.进行Windows应用程序开发时,需要库文件,执行该应用程序时,则需要对应的库文件。 5.汇编语言与C和C++语言有两种混合编程方法,分别是和 。 6.IA-32处理器有个32位通用寄存器,有个段寄存器,段寄存器都是位的。 分数评卷人 二、判断题(每题1分,共10分) 1.Windows的模拟DOS环境与控制台环境是一样的。() 2.“TYPE DX”的结果是一个常量,等于2。()3.数据扩展的基本原则是位数加长,数值大小不变。() 4.指令的相对寻址都是近转移。()5.JA和JG指令的条件都是“大于”,所以是同一个指令的两个助记符。() 6.CALL指令的执行必然影响堆栈指针ESP。()

7.在宏定义中,LOCAL伪指令声明标识符;而在过程定义中,LOCAL 伪指令用于分配局部变量。()8.指令“OUT DX,AX”的两个操作数均采用寄存器寻址方式。() 9.MASM32软件包既支持32位图形界面应用程序的开发,也支持控制 台应用程序开发。()10.程序终止执行也就意味着汇编结束,所以两者含义相同。 () 分数评卷人 三、按下面要求写出相应的数据定义语句或汇 编指令(变量名可任意指定)(每小题2分, 共12分) 1.定义字符串变量:assembly language 2.定义20个未赋值的字变量 3.定义符号常量str,表示字符串assembly language 4.定义用十六进制数表示的双字变量:20 5.用寄存器EBX和ESI的基址变址寻址方式把存储器的一个双字与EAX寄存器的内容相加,并把结果送回存储器中。用一条汇编指 令完成该功能。 6.用一条汇编指令实现将寄存器EAX和标志位CF、OF同时清零。 分数评卷人 四、程序分析与阅读题(共 28分) 1.根据数据段定义的变量,分析下列指令的运行结果并填在空格里

相关主题
文本预览
相关文档 最新文档