文档库 最新最全的文档下载
当前位置:文档库 › 汇编语言程序设计的实验环境及实验步骤

汇编语言程序设计的实验环境及实验步骤

汇编语言程序设计的实验环境及实验步骤
汇编语言程序设计的实验环境及实验步骤

汇编语言程序设计的实验环境及实验步骤

1、汇编语言源程序编写好以后,必须经过下列几个步骤才能在机器上运行:

(1) 编辑源程序(生成.ASM文件)

(2) 汇编源程序(.ASM → .OBJ)

(3) 连接目标程序(.OBJ → .EXE )

(4) 调试可执行程序(使用调试程序Debug调试生成的.EXE文件)

(5) 运行程序输出结果。

2、Windows环境下的汇编语言集成编程环境的使用

实验一 DOS环境下的汇编语言编程环境使用(基础与验证型)

实验要求和目的

1、掌握汇编语言程序设计的基本方法和技能;

2、熟练掌握使用全屏幕编辑程序EDIT编辑汇编语言源程序;

3、熟练掌握宏汇编程序MASM的使用;

4、熟练掌握连接程序LINK的使用。

实验涉及的主要知识单元

1、编辑源程序

例如,编写程序,可以在DOS模式下用编辑程序edit.exe建立汇编语言源程序文件Hello.asm,注意文件名的扩展名必须是.asm。

也可以在Windows 2000或者在Windows XP环境下鼠标单击“开始”→“运行”,在“运行”中输入“cmd”进入DOS模式,运行edit软件,例如:C:> edit hello.asm

2、汇编语言源程序的汇编过程

汇编程序调入后,首先显示版本号,然后出现三个提示行。

第一个提示行为:Object filename [HELLO.OBJ]:

询问目标程序文件名,方括号内为机器规定的默认的文件名,通常直接按回车键,表示采用默认的文件名(如上所示)。

第二个提示行为:Source listing [NUL.LST]:

询问是否建立列表文件。若不建立,直接回车;若要建立,可以输入文件名hello再回车。列表文件中同时列出源程序和机器语言程序清单,并给出符号表,有利于程序调试。

第三个提示行为:Cross-reference [NUL.CRF]:

询问是否要建立交叉索引文件。若不建立,则直接回车;若要建立,可以输入文件名。

以上过程也可用masm hello;一步完成。最后的;表示masm命令全部用默认选项,不出现三个提示。

2、目标程序的连接过程

在连接程序调入后,首先显示版本号,然后出现三个提示行。

第一个提示行为:Run File [HELLO.EXE]:

询问要产生的可执行文件的文件名。一般直接回车采用规定的隐含文件名。

第二个提示行为:List File [NUL.MAP]:

询问是否要建立连接映象文件。若不建立,则直接回车;若要建立,则输入文件名再回车。

第三个提示行为:Libraries [.LIB]:

询问是否用到库文件。若无特殊需要,则直接回车即可。

以上过程也可使用link hello;一步完成。最后的;表示link命令全部用默认选项,不出现三个提示。

4、当建立了可执行文件HELLO.EXE后,就可直接在DOS下执行该程序:

5、MASM编译源文件后,用DEBUG调试可执行文件。

在“命令提示符”窗口下执行“DEBUG<文件所在路径+文件名>”指令

实验二 Debug的使用(基础与验证型)

实验要求和目的

熟练掌握动态调试程序DEBUG的使用;

实验涉及的主要知识单元

启动Debug程序:在DOS状态下可以用下面的命令启动Debug程序:

DEBUG [路径文件名.扩展名]

Debug后面的文件名及路径是指被调试程序的文件名及路径,Debug后面的文件必须是程序的可执行文件,其扩展名可以是.EXE 或.COM。在此命令后,DOS将调试程序Debug调入内存,Debug接着将被调程序送入内存。比如:DEBUG 123.EXE

调试程序Debug的主要命令如下:

(一)显示内存单元内容的命令D

格式(1):-D 地址

从指定地址开始,显示128个字节的内容,每一行的左边显示段内偏移地址,接着显示16个单元的内容,最右边区域则显示这一行的16个单元所对应的可显示的字符。若无可显示的字符,则用圆点(小数点)填充。

D命令中的地址可为段内偏移量,也可为段基址和段内偏移量两部分,中间用冒号隔开,如1680:0110,即指段基址为1680H,段内偏移量为0110H。Debug中所显示的数据均为十六进制数,且省去了后面的H 标志。

格式(2):-D 范围

将显示指定地址范围内的内存单元的内容,起始地址可由段基址及段内偏移量两个部分组成,中间用冒号“:”隔开,也可以只指出段内偏移量,而此时的段基址在DS中。这里所说的范围包含起始地址和结束地址。比如–D DS:1000 1020 将显示数据段偏移地址为1000H到1020H的内容。

(二)修改内存单元内容的命令E

格式(1):-E 地址内容表

它的功能是用给定的内容表去代替所指定的内存单元的内容。

例如:

E DS:0110 41 ‘CLOSE’41

该命令执行后,将用列表中的7个字符填入从DS:0110 到DS:0116 的7个存储单元中。

格式(2):-E 地址

它的功能是可以连续地逐个修改内存单元的内容。当屏幕上显示指定单元的地址和内容之后,可采取下列办法:

①若指定单元的内容需要修改,则将新的内容的十六进制数输入,再按空格键,修改便告完成,然后显示下一个存储单元的地址及内容,若需要修改,可进行同样的操作。若某一个单元的内容不需要修改,而操作又要进行下去,则可直接按空格键。

②若需要显示前一个单元的地址和内容,则输入连接号′-′,若要修改,则输入新的内容;若显示前一个单元的地址和内容仍要修改,则可进行同样的操作;若显示的内容不需要修改,则可直接按′-′键,使该操作由高地址向低地址单元连续不断地进行。

③按键,结束E命令。

(三)检查和修改寄存器内容的命令R

格式(1):R

此时将显示所有寄存器的内容和全部标志位的状态,以及现行CS:IP所指的机器指令代码和反汇编符号。

格式(2):R 寄存器名

该格式可用于检查和修改指定寄存器的内容。若不修改其内容,可按键,若需要修改其内容,可以输入1-4 个十六进制数,再按键。

格式(3):RF

该格式可用于显示标志和修改标志位状态。

当系统给出标志位状态后,可采取下列办法:

①若不需要修改任一标志位,可按键。

②若需要修改一个或多个标志位,可输入其相反的值。各标志位之间可以无空格且与顺序无关,修改后按键。

由于标志位状态显示时,是用下列特殊符号表示的,因而修改时,只要输入规定的符号即可。下面是标志名和状态符号的对照表:

标志名置位符号复位符号

溢出标志OF(是/否) OV NV

方向标志DF(减/增) DN UP

中断标志IF(允许/禁止) EI DI

符号标志SF(负/正) NG PL

零标志ZF(是/否) ZR NZ

辅助进位标志AF(是/否) AC NA

奇偶校验标志PF(偶/奇) PE PO

进位标志CF(是/否) CY NC

只有追踪标志TF,不能用指令直接修改。

例如:输入RF命令,系统可能作出如下响应:

OV DN EI NG ZR AC PE CY -

若现在要修改奇偶、零、中断和溢出标志位,可在光标处输入:

PO NZ DI NV

(四)运行程序命令G

格式:G [=地址][地址[地址…]]

该命令可以在程序运行中设置断点。它是Debug程序进行程序调试的主要命令之一。

示例:-g 001a 则执行从当前cs:ip至001a的指令,注意:地址设置必须从指令的第一字节设起。

①第一个参数“=地址”规定了程序执行的起始地址,以CS内容作段地址,等号后面的地址只需给出地址偏移量。此时,命令G与地址之间的等号不能省去。

如果在G命令执行前,已经设置了CS值和IP值,则也可以直接用G命令,从指定地址执行程序。

②格式中后面给出的地址是指断点地址,最多可设置10个断点。当程序执行到一个断点时,就停下来,显示CPU各寄存器的内容和标志位的状态,以及下一条待执行的指令,被调试程序的所有断点全部被取消,并返回Debug。

③地址参数所指的单元,必须包含有有效的8088指令的第一个字节,否则将产生不可预料的结果。

④堆栈必须至少包含有6个可用字节,否则也将产生不可预料的结果。

⑤若断点地址只包括地址偏移量,则认为段地址在CS寄存器中。

(五)追踪命令T

格式(1):T [=地址]

该命令可以在指令执行中进行追踪,若略去地址,则从CS:IP现行值执行。每一次T命令都执行一条指令。

格式(2):T [=地址][值]

此时,它可对多条指令进行追踪,即在执行了由值所指定的若干条指令之后,停止执行并显示各寄存器的内容和各标志位,还指出下一条待执行的指令。

(六)汇编命令A

若在调试目标程序的过程中,要求改写或增添一段目标程序,则可以用A命令直接在Debug下实现。

格式:A [地址]

该命令可以从指定地址开始,将输入的汇编语言语句立即汇编成机器代码,连续存放在内存单元中。在程序输入完毕后,最后一行不输入内容,直接按回车键,即可返回DEBUG程序,还可用反汇编命令U 对刚输入的内容进行反汇编,以验证输入的程序是否正确。

使用A命令应遵守以下规则:

①所有输入数值,均为十六进制数。

②前缀助记符,必须在相关指令的前面输入,可以在同一行,也可以在不同行输入。

③段超越助记符为CS:、DS:、ES:、SS:。

④远调用时的返回指令助记符用RETF。

⑤使用串操作指令时,助记符中必须注明是字节还是字传送。

⑥汇编语言能自动汇编短、近和远的转移及近和远的调用,也能由NEAR和FAR前缀来超越。

例如:

0110:0600 JMP 602;短转移

0110:0602 JMP NEAR 605;近转移

0110:0605 JMP FAR 60A;远转移

第一条JMP指令中含有一个字节偏移量。

第二条JMP指令中含有两个字节偏移量。

第三条JMP指令中含有两个字节的偏移量及两个字节的段地址。

⑦当DEBUG不能确定某些操作数涉及的是字类型存储单元还是字节类型的存储单元时,在这种情况下,必须用前缀“WORD PTR”或“BYTE PTR”来加以说明。

例如:

NEG BYTE PTR [128]

DEC WORD [SI]

⑧当Debug不能确定一个操作数是立即数还是存储单元的地址时,可以把地址放在方括号中。

⑨两个最常用的伪指令DB和DW可以在A命令中使用,用来直接把字节或字的值送入相应的存储单元。

例如:

DB 2,5,3,4,′THIS IS AN EXAMPLE′

DW 6000,2000,7000,′BA′

⑩Debug支持所有形式的寄存器间接寻址命令。

例如:ADD BX,74[BP+3][SI-5]

POP[BX+DI]

(七)反汇编命令U

格式(1):U地址

该命令从指定的地址开始,反汇编32个字节。若略去指定地址,则以上一个U命令反汇编的最后一条指令地址的下一条指令地址作为起始地址;若没有用过U命令,则以由Debug初始化的段寄存器的值作段地址,以100作为地址偏移量。

格式(2):U范围这种格式的命令,可以对指定范围的内存单元进行反汇编,范围可以由起始地址、结束地址(只能包含地址偏移量)或起始地址及长度来指定。其命令格式如:

U 04BA:100 0108 或U 04BA:0100 L7

两者是等效的。

(八)输入命令I

格式:I端口地址

该命令从指定端口输入一个字节并显示。

例如: I 2E8

C C

它表示所显示的是从02E8 端口输入的一个字节为CC。

(九)输出命令O

格式:O端口地址字节值

其功能是向指定的端口输出一个字节。

例如:O 2E8 12

它表示将一个字节12H送到输出端口2E8。

(十)命名命令N

格式:N文件标识符[文件标识符]

该命令用给定的两个文件标识符格式化在CS:5C和CS:6C的两个文件控制块中(若在调用Debug时具有一个文件标识符,则它已格式化在CS:5C的文件控制块中),文件控制块是将要介绍的装入命令L和写命令W所需要的。

N命令能把文件标识符和别的参数放至CS:81开始的参数保存区中。在CS:80中保存输入的字符个数,寄存器AX保存前两个文件标识符中的驱动器标志。

例如:

A> DEBUG

N TEST

L

N命令后,用L命令可将TEST调入自己的CS:100开始的存储区中。若对正在调试的程序TEST进行调试时,需要用到其它的文件标识符及其它参数,也可用N命令加以实现。;

例如:

A> DEBUG TEST

N 文件1 文件2

(十一)装入命令L

格式1: L <地址> <驱动器号> <起始逻辑扇区> <所读扇区个数n>

其中<地址>的缺省值为CS:100。逻辑扇区可由物理扇区号换算得到,以双面双密度盘为例:物理扇区是按0面0道1区,0面0道2区,……,0面0道9区,0面1道1区,……,0面39道9区,1面0道1区,……,1面39道9区排列。而逻辑扇区与物理扇区号的对应关系为物理扇区0面0道1扇区至9扇区,逻辑扇区号为0—8;物理扇区1面0道1扇区至9扇区,逻辑扇区号为9—11H;物理扇区0面1道1扇区至9扇区,逻辑扇区号为12—1AH;……。这样每道先0面后1面一直排下去。

其中<驱动器号>为0、1或2,0表示A驱,1表示B驱,2表示硬盘。

功能: 将<驱动器号>指定的盘上,从<起始逻辑扇区>起,共n个逻辑扇区上的所有字节顺序读入指定内存地址开始的一片连续单元。当L后的参数缺省时,必须在L之前由N命令指定(或进入DEBUG时一并指出)所读驱动器文件名。此时L执行后将该文件装入内存。

例如:-N EXAMPLE

-L

将当前驱动器上的EXAMPLE文件装入CS:100起始的一片内存单元。

格式2:L地址或L

该命令把已在CS:5C中格式化的文件控制块所指定的文件装入到指定区域中。

若省略地址,则装入到CS:100开始的内存区域中。

若是带有扩展名.COM或.EXE文件,无论命令中是否指定了地址,一律装入到CS:100开始的内存区域中去。

通常在BX和CX中包含了所读入文件的字节数,但对具有扩展名.EXE文件,则BX和CX中还包含实际程序长度。

(十二)写命令W

功能: 为L/W命令指定待装入/写盘文件

格式1:W <地址> <盘号> <起始逻辑扇区> <所写逻辑扇区数n>

功能:与L命令不同的地方是将内存从<地址>起始的一片单元内容写入指定扇区。只有W而没有参数时,与N命令配合使用将文件写盘。该命令把由地址所指定的内存区域中的数据写入指定的驱动器。若地址中只包含偏移量,则段地址在CS中。

其中,扇区号决定了写入起始扇区;区段数决定了写入的区段个数;扇区号和区段数均用十六进制数表示。

格式2:W地址或W

该命令把指定内存区域中的数据,写入到由CS:5C处的文件控制块所规定的文件中去。若省略地址,则内存区域从CS:100 开始。

对于扩展名为.EXE或.HEX文件不能写入。因为这些文件的写入要用一种特殊格式,而此格式Debug 程序不支持。

(十三)退出Debug命令Q

格式:Q

该命令退出Debug程序并返回DOS。

Q命令并不把内存中的文件存盘,若需要存盘的话,应在退出前用W命令写入磁盘。

四、实验内容与步骤

1、实验内容

(1)进入和退出Debug程序

(2)学会Debug中的D命令、E命令、R命令、T命令、A命令、G命令、U命令、N命令、W命令等的

使用。

(3)利用Debug,验证乘法、除法、加法、减法、带进位加、带借位减、堆栈操作指令、串操作指令

的功能。

(4)使用Debug调试程序调试汇编程序。

2、实验步骤

(1)在DOS提示符下,进入Debug程序。

(2)详细记录每一步所用的命令,以及查看结果的方法和具体结果。

(3)现有一个双字加法源程序如下,其中存在错误。现假设已汇编、连结生成了可执行文件HB.EXE,存放在d:\MASM目录下。请使用Debug对其进行调试。

Code SEGMENT

ASSUME CS:code,DS:code

ORG 100H ;从100H处开始存放下列指令

Start:MOV AX,code ;将DS置成code段的首地址

MOV DS,AX

MOV SI,200H ;取第一个数的首地址

MOV AX,[SI] ;将第一个数的低16位取到AX

MOV DI,204H ;取第二个数的首地址

ADD AX,[DI] ;第一个数和第二个数的低16应相加

MOV [SI+8],AX ;低16位相加的结果送到208H和209H单元

MOV AX,[SI+2] ;取第一个数的高16位送到AX中

ADD AX,[DI+2] ;两个数的高16位相加

MOV [SI+0AH],AX ;高16位相加的结果送到20AH,20BH单元

MOV AX,4C00H ;使用DOS的4CH号功能调用

INT 21H ;进入功能调用,返回DOS

ORG 200H ;从200H处开始存放下列数据

DD 12345678h,654387A9h,0h ;被加数、加数、和

Code ENDS

END start

调试过程:

①进入Debug并装入可执行文件HB.EXE

D:\MASM>Debug HB.EXE

-

②观察寄存器初始状态

-R

AX=0000 BX=0000 CX=020C DX=0000 SP=0000 BP=0000 SI=0000 DI=0000

DS=1892 ES=1892 SS=18A2 CS=18A2 IP=0100 NV UP EI PL NZ NA PO NC

18A2:0100 B8A218 MOV AX,18A2

注:(1)以上显示的寄存器值,可能和你的电脑显示的不一样。

(2)Debug中默认的进制是十六进制。

③以单步工作方式开始运行程序

首先用T命令顺序执行用户程序的前l两条指令,将段寄存器DS预置为用户的数据段。

-T

AX=18A2 BX=0000 CX=020C DX=0000 SP=0000 BP=0000 SI=0000 DI=0000

DS=1892 ES=1892 SS=18A2 CS=18A2 IP=0103 NV UP EI PL NZ NA PO NC

18A2:0103 8ED8 MOV DS,AX

-T

AX=18A2 BX=0000 CX=020C DX=0000 SP=0000 BP=0000 SI=0000 DI=0000

DS=18A2 ES=1892 SS=18A2 CS=18A2 IP=0105 NV UP EI PL NZ NA PO NC

18A2:0105 BE0002 MOV SI,0200

④观察用户程序数据段初始内容

-D 200 20F

18A2:0200 78 56 34 12 A9 87 43 65-00 00 00 00 00 74 13 50 xV4...Ce.....t.P

-

⑤连续工作方式运行程序至返回DOS前(设断点),查看运行结果。为此,现使用U命令反汇编。-U 100

18A2:0100 B8A218 MOV AX,18A2

18A2:0103 8ED8 MOV DS,AX

18A2:0105 BE0002 MOV SI,0200

18A2:0108 8B04 MOV AX,[SI]

18A2:010A BF0402 MOV DI,0204

18A2:010D 0305 ADD AX,[DI]

18A2:010F 894408 MOV [SI+08],AX

18A2:0112 8B4402 MOV AX,[SI+02]

18A2:0115 034502 ADD AX,[DI+02]

18A2:0118 89440A MOV [SI+0A],AX

18A2:011B B8004C MOV AX,4C00

18A2:011E CD21 INT 21

-

可见,要执行10条指令,至011B处停止

-G=100,011B

AX=7777 BX=0000 CX=020C DX=0000 SP=0000 BP=0000 SI=0200 DI=0204

DS=18A2 ES=1892 SS=18A2 CS=18A2 IP=011B NV UP EI PL NZ NA PE NC

18A2:011B B8004C MOV AX,4C00

-D 200 20F

18A2:0200 78 56 34 12 A9 87 43 65-21 DE 77 77 43 43 83 06 xV4...Ce!.wwCC..

-

和为7777DE21H,正确。

⑥再取一组数据,查看运行结果。为此,首先用E命令修改数据。

-E 200 CD,AB,78,56,90,EF,34,12

-D 200 20F

18A2:0200 CD AB 78 56 90 EF 34 12-21 DE 77 77 43 43 83 06 ..xV..4.!.wwCC..

-G=100,11B

AX=68AC BX=0000 CX=020C DX=0000 SP=0000 BP=0000 SI=0200 DI=0204

DS=18A2 ES=1892 SS=18A2 CS=18A2 IP=011B NV UP EI PL NZ NA PE NC

18A2:011B B8004C MOV AX,4C00

-D 200 20F

18A2:0200 CD AB 78 56 90 EF 34 12-5D 9B AC 68 43 43 83 06 ..xV..4.]..hCC..

-

和为68AC9B5DH,错误。说明程序有问题。

⑦再将断点设在完成低位字加法后,查看运行结果。

-G=100,112

AX=9B5D BX=0000 CX=020C DX=0000 SP=0000 BP=0000 SI=0200 DI=0204

DS=18A2 ES=1892 SS=18A2 CS=18A2 IP=0112 NV UP EI NG NZ NA PO CY

18A2:0112 8B4402 MOV AX,[SI+02] DS:0202=5678

-D 200 20F

18A2:0200 CD AB 78 56 90 EF 34 12-5D 9B AC 68 43 43 83 06 ..xV..4.]..hCC..

-

低位和为9B5D,正确。说明错误可能出在后面

⑧使用T命令从刚才的断点处向后单步调试,查看运行结果。

-T=112

AX=5678 BX=0000 CX=020C DX=0000 SP=0000 BP=0000 SI=0200 DI=0204

DS=18A2 ES=1892 SS=18A2 CS=18A2 IP=0115 NV UP EI NG NZ NA PO CY

18A2:0115 034502 ADD AX,[DI+02] DS:0206=1234

-T

AX=68AC BX=0000 CX=020C DX=0000 SP=0000 BP=0000 SI=0200 DI=0204

DS=18A2 ES=1892 SS=18A2 CS=18A2 IP=0118 NV UP EI PL NZ NA PE NC

18A2:0118 89440A MOV [SI+0A],AX DS:020A=68AC

-

AX寄存器的结果为68AC,而应为68AD。可见是本条加法指令使用错误,这里应使用带进位加法指令。

⑨使用A命令装入正确指令后再次运行,察看结果。

-A 115

18A2:0115 ADC AX,[DI+02]

18A2:0118

-G=100,11B

AX=68AD BX=0000 CX=020C DX=0000 SP=0000 BP=0000 SI=0200 DI=0204

DS=18A2 ES=1892 SS=18A2 CS=18A2 IP=011B NV UP EI PL NZ NA PO NC

18A2:011B B8004C MOV AX,4C00

-D 200 20F

18A2:0200 CD AB 78 56 90 EF 34 12-5D 9B AD 68 43 43 83 06 ..xV..4.]..hCC..

-

和为68AD9B5DH,正确。对于这样一个简单程序一般来说不会再有问题。退出后修改源程序即可。

⑩退出

-Q

D:\>

需要说明的是此程序很简单,只需使用T命令逐条单步调试即可。本例采用的调试方法似乎过于繁琐,但这是为了说明程序调试的一般方法,以便读者调试复杂程序时借鉴。

实验要求与提示

1、实验要求

(1)熟练掌握Debug的命令;

(2)熟练掌握使用Debug调试汇编程序;

(3)回答思考问题;

(4)记录实验结果。

2、实验提示

一般使用Debug调试汇编程序的步筹如下:

(1) 调用DEBUG,装入用户程序

(2) 观察寄存器初始状态

(3) 以单步工作方式开始运行程序

(4) 观察用户程序数据段初始内容

(5) 继续以单步工作方式运行程序

(6) 连续工作方式运行程序

(7) 修改程序和数据

(8) 运用断点调试程序

实验四-循环结构汇编语言程序的设计实验报告

循环结构汇编语言程序设计实验报告

实验四循环结构汇编语言程序设计 一、实验目的 1、学习循环结构的汇编语言程序的设计和调试。 2、学习通过直接对8086计算机的寄存器和存的直接访问,编写更高效简洁的汇编程序。 3、加深掌握计算机整体的工作过程。 3、加深对排序算法的理解。 二、实验任务 编写程序求出数组A中(20个元素)的最大值和最小值(数组没有排序)。 要求至少采用二种不同的排序算法来实现。( 快速排序,归并排序、堆排序、Shell排序、插入排序、冒泡排序、交换排序、选择排序、基数排序……) 三、实验容 为了更好地实现老师所布置的实验任务,我们根据情况选取以下两种方式实

验。 1、利用冒泡排序的方式求解数组A中元素的最大值最小值。设计流程图如 下所示: 2、利用选择排序的方式求得数组A中元素的序列。设计流程图如下所示:

四、实验环境 PC机: winXP/win7(32位)/win7(64位)+winxp 虚拟机 汇编工具:Masm.exe+Link.exe。 五、实验步骤 1)建立和生成的文件 (1)编写的源程序,源程序名为abc、扩展名为.asm (2)源程序经汇编程序Masm.exe汇编(翻译)后生成二进制目标程序,文件名为abc.obj (3)目标程序需要经Link.exe连接生成可执行程序,文件名为abc.exe 2)汇编环境 最基本的汇编环境只需要两个文件:Masm.exe和Link.exe。将这两个文件拷入到已经建好的文件夹(例如 huibian)中,并将文件夹huibian放在硬盘根

目录C :\>下 3)上机步骤 进入DOS窗口中执行。 4)调试程序 进入DEBUG后,调试程序 5)调试成功后重新汇编、连接并生成可执行代码 6)执行程序,并对运行结果截图。 利用冒泡排序求得数组A中元素的最大值最小值的实验结果如下图所示:(说明:输入数据为:13,0,59,900,587,1,657,234,34,48) 利用选择排序对数组A中元素排序得到的序列得实验结果如下图所示:(说明:输入数据为13,0,59,900,587,1,657,234,34,48)

环境工程实习心得体会(4篇)

环境工程实习心得体会(4篇) 环境工程实习心得体会第一篇: 人生在历练中成长,经历一次胜过千万次的彷徨。在这短暂的实习过程中,我收获了许多,许多 知识是需要经过实践检验的。如果你整日守在闭塞的环境中,你就不会感觉到自己的无知;你也许会满足于自己的所学,而并不知道当你跳出这狭小的圈子时,自己所掌握得都很苍白无力。初看整套工艺,原理似乎很简单,而真正面对的时候,不妨多问自己几个为什么,这时你就会发现自己的知识体系不够系统,知识基础不够扎实。这给我的教训是学知识一定要融会贯通,达到知识体系系统化。同时要提高实践能力,加强专业技能。在实习过程中,我会发现自己每次都会有陌生感,观察不够仔细,容易浮于表面。比如说,自己想象中污泥管的管径应该是很大的,实际看到了才发现了自己的错误,认识到做什么事都要以实践为基础,切勿凭空乱造;我感到做任何事都要有一个严谨的态度,这是对于一个环保工作者最起码的要求。 污水处理厂的方方面面问题都值得研究,不管是从运行,还是从管理,很多事情预想中的结果总和现实有偏差,这就提醒了我们工程设计者,考虑问题要全面、处理问题要细心。在工作中,方法的正确和便利非常重要,但却不能忽略我们所期望的结果。 在实习期间,临安伍特环境工程公司各种管理体制、流程和工作人员之间的上下层关系给了我一个非常好的学习机会。这种系统可以

说是我们现实社会中任何一个企业缩影的充分体现,在公司的实习让我体验到了社会现实的残酷性以及社会交际的重要性。按照计划的安排,我和同学一起设计了印染废水的处理方案,我们在设计的过程中,共同探讨,不仅培养了我们谨慎、耐心的工作作风,还培养了我们如何思考问题、解决问题的能力。同学们互相支持与鼓励,一起讨论难以解决的问题,使实习生活变得不那么枯燥。这种精神的培养不仅给我的职业道路起到了一定的促进作用,也让我体会到团队精神在工作中的重要性。 总的来说,这次实习给了我学习很多在校园、在课堂上、书本上学不到的东西的机会,也使我懂得了很多做人的道理。我要感谢这次实习,感谢指导这次实习的教师,感谢为我们争取了这次实习机会的领导,同时也很感谢在实习期间,特别是给予我支持与鼓舞的的同学们!这次实习,让我对自己有了更深刻的认识。 环境工程实习心得体会第二篇: 第一篇: 我在河间市的环境保护局开始了为期一个月的实习锻炼。开始还不是很适应,但后来经过自我调整和学习,慢慢就步入了正轨。在环保局工作的点点滴滴都让我受益匪浅。整个实习期分2部分,前面2周在项目管理科和环境监测站实习,后两周做环境调查和宣传等工作。 项目管理科的职责职能是贯彻实施国家建设项目环境管理有关法律、法规及环境影响评价、三同时管理制度等规定和政策,并负责

汇编语言学习知识程序设计实验

目录 目录 (1) 实验一利用DEBUG熟悉常用指令的使用 (2) 一、实验目的 (2) 二、示例 (2) 三、实验题 (2) 实验二汇编程序和连接程序的使用 (6) 一、实验目的。 (6) 二、示例。 (6) 三、实验题。 (8) 实验三顺序结构程序设计 (11) 一、实验目的 (11) 二、示例 (11) 三、实验题 (12) 四、实验报告 (15) 实验四循环结构程序设计 (16) 一、实验目的 (16) 二、示例 (16) 三、实验题 (18) 实验五分支结构程序设计 (21) 一、实验目的 (21) 二、示例 (21) 三、实验题 (22) 实验六子程序设计 (29) 一、实验目的 (29) 二、实验题 (29)

实验一利用DEBUG熟悉常用指令的使用 一、实验目的 熟悉指令系统,掌握常用指令的用法;通过实验加深对各种寻址方式的理解;能熟练使用DEBUG中的命令对指令进行反汇编,观察并了解机器代码。 二、示例 请分别用一条汇编语言指令完成如下功能:(过程略)。 1.用寄存器BX和SI的基址变址寻址方式把存储器的一个字节与AL寄存器的内容相加,并把结果送到AL中。 ADD AL,[BX][SI] 2.用位移量为0520H的直接寻址方式把存储器中的一个字与3412H相加,并把结果送回该存储单元。 ADD WORF PTR [0520H],3412H 三、实验题 1.调试、验证下列指令的结果,已知(DS)=2000H,(BX)=0100H,(SI)=0002H,(BP)=0200H,(SS)=2300H,(20100)=12H,(20101)=34H,(20102)=56H,(20103)=78H,(21200)=2AH,(21201)=4CH,(21202)=B7H,(21203)=65H,(23204)=88H,说明各指令执行完后AX寄存器的内容。要求输入指令,相应存储单元的内容要事先设置,单步 P执行,观察执行结果。 (设置存储器的值)

水污染控制工程实验报告

水污染控制工程 实验报告 (环境工程专业适用) 2014年至2015 年第 1 学期 班级11环境1班 姓名吴志鹏 学号1110431108 指导教师高林霞 同组者汤梦迪刘林峰吴渊田亚勇李茹茹 程德玺

2014年4月

目录 实验一曝气设备充氧性能的测定 -------------------------------------------------- 1实验二静置沉淀实验----------------------------------------------------------------- 5实验三混凝实验---------------------------------------------------------------------- 8一、实验目的 ------------------------------------------------------------------------- 15

实验一曝气设备充氧性能的测定 一、实验目的 1.掌握表面曝气叶轮的氧总传质系数和充氧性能测定方法 2.评价充氧设备充氧能力的好坏。 二、实验原理 曝气是指人为地通过一些机械设备,如鼓风机、表面曝气叶轮等,使空气中的氧从气相向液相转移的传质过程。氧转移的基本方程式为: d/dt=K La(s-)(1)式中d/dt:氧转移速率,mg/(Lh); K La:氧的总传质系数,h-1; s:实验条件下自来水(或污水)的溶解氧饱和浓度,mg/L; :相应于某一时刻t的溶解氧浓度mg/L, 曝气器性能主要由氧转移系数K La、充氧能力OC、氧利用率E A、动力效率Ep四个主要参数来衡量。下面介绍上述参数的求法。 (1)氧转移系数K La 将(1)式积分,可得 1n(s—)=一K La t+ 常数(2)此式子表明,通过实验测定s和相应与每一时刻t的溶解氧浓度后,绘制1n(s—)与t关系曲线,其斜率即为K La。另一种方法是先作-t曲线,再作对应于不同值的切线,得到相应的d/dt,最后作d/dt与的关系曲线,也可以求出。 (2)充氧性能的指标 ①充氧能力(OC):单位时间内转移到液体中的氧量。 表面曝气时:OC(kg/h)= K La t(20℃)s (标)V (3) K La t(20℃)= K La t 1.02420T(T: 实验时的水温) s (标)=s (实验) 1.013105/实验时的大气压(Pa) V:水样体积 ②充氧动力效率(Ep):每消耗1度电能转移到液体中的氧量。该指标常被用以比较各种曝气设备的经济效率。 Ep(kg/kW·h)=OC/N (4) 式中:理论功率,采用叶轮曝气时叶轮的输出功率(轴功率, kW)。 ③氧转移效率(利用率,E A):单位时间内转移到液体中的氧量与供给的氧量之

汇编语言程序设计课后习题解答宋人杰2版

第1章汇编语言基础知识 1.简述汇编语言源程序、汇编程序、和目标程序的关系。 答:用汇编语言编写的程序称为汇编源程序;汇编源程序在汇编程序的翻译下转换成计算机语言变成目标程序。 2. 简述汇编语言的优缺点。 答:(1) 汇编语言的优点: ①可有效地访问、控制计算机各种硬件设备,如磁盘、存储器、CPU、I/O端口等。. ②目标代码简短,占用内存少,执行速度快,是高效的程序设计语言。 ③可与高级语言配合使用,应用十分广泛。 (2) 汇编语言的缺点: ①通用性和可移植性较差 ②相对于高级语言来说较繁锁、易出错、不够直观。 3.CPU的寻址能力为8KB,那么它的地址总线的宽度为多少? 答:13 4. 1KB的存储器有多少个存储单元? 答:1024个字节。 5. 指令中的逻辑地址由哪两部分组成? 答:指令中的逻辑地址由段基址和偏移量组成。 6. 以下为用段基址:偏移量形式表示的内存地址,试计算它们的物理地址。 (1) 12F8:0100 (2) 1A2F:0103 (3) 1A3F:0003 (4) 1A3F:A1FF 答: (1) 13080H (2) 1A3F3H (3) 1A3F3H (4) 245EFH 7. 自12FA:0000开始的内存单元中存放以下数据(用十六进制形式表示): 03 06 11 A3 13 01,试分别写出12FA:0002的字节型数据、字型数据及双字型数据 的值。 答:字节型数据:11H 字型数据:0A311H 双字型数据:0113A311H 8. 内存中某单元的物理地址是19318H,段基地址为1916H,则段内偏移地址为 多少?若段内偏移地址为2228H,则段基地址为多少? 答:若段基地址为1916H,则段内偏移地址为01B8H;若段内偏移地址为2228H,则段基地址为170FH 9. 在实模式环境中,一个段最长不能超过多少字节? 答:64KB 10. 实模式可寻址的内存范围是多少? 答:1MB

环境工程实习报告模板

环境工程实习报告模板 实习报告是在实习的基础上完成的书面资料。下文是环境工程实习报告模板,希望可以帮到你们。 篇【1】:环境工程实习报告模板一、见习目的 通过这次的实习,将课堂的理论知识与实际操作的实践相结合,加强我们对环境工程专业的认识和了解其实际应用。初步掌握污水、固体废弃物的处理工艺,以及环境检测的相应仪器。同时开阔视野,增长见识,为我们以后更好把所学的知识运用到实际工作中打下坚实的基础。 二、见习项目安排 20XX年10月29日红树林保护区(上午) 亚龙湾污水处理厂(下午) 20XX年10月30日红沙污水处理厂(上午) 鹿回头污水处理厂(下午) 20XX年11月 1 日环境检测站(上午) 小结 20XX年11月 2 日气象站(上午) 荔枝沟污水处理厂(下午) 20XX年11月 3 日固体废弃物填埋厂(上午)总结 三、见习内容

1、了解各单位概况、处理工艺; 2、了解常用处理设备、工作原理及主要构筑物构造、布局; 3、掌握处理工艺流程、处理技术。 四、见习内容详述 1、实地检测 10月29日上午,我们来到红树林河滩进行实地检测,有三个项目,具体是硫化氢的测定、溶解氧的测定、水样色度的测定。 (1)硫化氢的测定: 我们先将装有硫化氢吸收液的采样管和CD1型大气采样器组装好,然后设定速率为每分一升,设定时间为60分钟。通过上述操作来固定空气中的硫化氢。固定好后的溶液导入具塞比色管,贴上标签。标签要写明采样时间、地点、项目、环境。然后待回到实验室用分光光度法测定硫化氢的浓度。 (2)溶解氧的测定: 我们用采样瓶表层水采样,加入碱性碘化钾1毫升,硫酸锰2毫升。摇匀,盖塞,贴标签保存。待回到实验室进行硫代硫酸钠滴定计算溶解氧的量。带队老师告诉我们取样时

汇编语言程序设计实验报告

微机原理实验报告 实验名称汇编语言程序设计 一、实验目的 1、掌握Lab6000p实验教学系统基本操作; 2、掌握8088/8086汇编语言的基本语法结构; 3、熟悉8088/8086汇编语言程序设计基本方法 二、实验设备 装有emu8086软件的PC机 三、实验内容 1、有一个10字节的数组,其值分别是80H,03H,5AH,FFH, 97H,64H,BBH,7FH,0FH,D8H。编程并显示结果:如果数组是无符号数,求出最大值,并显示; 如果数组是有符号数,求出最大值,并显示。 2、将二进制数500H转换成二-十进制(BCD)码,并显示“500H 的BCD是:” 3、将二-十进制码(BCD)7693转换成ASCII码,并显示“BCD 码7693的ASCII是:” 4、两个长度均为100的内存块,先将内存块1全部写上88H,再 将内存块1的内容移至内存块2。在移动的过程中,显示移动次数1,2 ,3…0AH…64H(16进制-ASCII码并显示子程序) 5、键盘输入一个小写字母(a~z),转换成大写字母 显示:请输入一个小写字母(a~z): 转换后的大写字母是: 6、实现4字节无符号数加法程序,并显示结果,如99223344H + 第1页

99223344H = xxxxxxxxH 四、实验代码及结果 实验代码见代码附录 1.1程序运行结果 图1 无符号最大值结果截图 1.1 程序运行结果

图2 有符号最大值截图2.0 程序运行结果

图3 BCD码显示3.0 程序运行结果

图4 ASCII码显示4.0 程序运行结果

图5 移动次数显示5.0 程序运行结果

环境工程实验报告

重庆交通大学 学生实验报告实验课程名称交通环境工程课程实验 开课实验室交通运输工程实验教学中心 学院交通运输学院年级2012级专业班交通工程 学生姓名 学号 开课时间2014 至2015 学年第 2 学期

实验内容、操作步骤: 一、实验内容 分小组在学府大道六公里至五公里的一断面进行交通量、车速、交通噪音调查记录,以15s为一间隔,持续三小时。调查完毕后统计15s内的平均车速,平均噪音以及交通量,将调查数据导入电脑进行数据分析评价,得到的720组调查数据如下: 时间14:30开始交 通 量 平均 车速 平均 噪声 交 通 量 平均 车速 平均 噪声 交 通 量 平均 车速 平均 噪声 交 通 量 平均 车速 平均 噪声 1 3 57 79.6 5 61 71. 2 11 56 84.6 10 56 77.3 2 12 59 77.1 14 48 7 3 7 45 76.9 12 57 79.8 3 19 56 74.8 12 59 76. 4 4 46 76.7 9 52 76.5

5 9 57 75.1 13 4 6 71.3 19 45 75.4 13 48 69.7 6 4 51 69.3 6 4 7 72.5 5 51 71 1 8 41 78.5 7 3 50 73.2 8 51 75.6 2 49 70.6 11 47 76.3 8 15 59 75.3 10 56 78.6 1 48 84.1 4 49 71.2 9 14 57 80.1 12 57 71.8 1 52 76.3 6 60 73 10 17 46 75.3 7 61 75.3 19 58 70.2 3 58 76.4 11 14 42 76.3 5 57 69.9 15 51 85.7 13 47 79.7 12 6 44 74.7 2 51 72.5 11 49 76.7 2 44 71.3 13 4 47 68.5 18 48 74.3 7 41 68.9 9 49 72.5 14 10 65 79.4 9 51 77.6 5 49 84.6 9 41 75.6 15 18 57 68.7 7 54 79.7 2 51 76.9 5 53 73.1 16 12 54 76.5 3 54 69.6 18 44 76.7 8 57 69.7 17 11 49 78.6 18 62 72.5 3 46 78.3 13 59 78.5 18 2 44 74.7 15 59 71.8 3 49 75.4 12 56 76.3 19 13 54 79.7 11 51 75.3 13 56 71 11 47 71.2 20 9 51 84.1 7 49 69.9 11 57 70.6 16 57 73 21 14 57 70.5 4 60 72.5 11 52 84.1 7 51 76.4 22 11 43 73.4 2 52 74.3 2 59 80.4 6 50 79.7 23 11 45 79 19 54 77.6 3 48 70.2 3 59 71.3 24 13 54 77.8 5 56 79.7 9 41 85.7 12 57 72.5 25 10 49 72.7 2 59 69.6 15 47 76.7 19 46 75.6 26 11 60 70.6 1 48 72.5 11 49 68.9 10 42 78.6 27 11 43 84.1 1 56 79.6 6 60 79.6 9 44 71.8 28 1 41 76.3 19 54 77.1 3 58 77.1 4 47 75.3 29 1 42 70.2 15 51 74.8 4 47 74.8 3 65 69.9 30 16 51 85.7 11 41 79.2 10 44 79.2 15 57 72.5 31 10 49 76.7 7 43 75.1 12 49 75.1 14 54 74.3 32 14 65 68.9 5 42 69.3 7 41 69.3 17 49 77.6 33 9 59 84.6 2 41 73.2 8 53 73.2 14 44 79.7 34 5 48 76.9 18 41 75.3 8 57 75.3 6 54 69.6 35 4 50 76.7 3 36 80.1 7 59 80.1 4 51 72.5 36 2 56 78.3 3 63 75.3 12 56 75.3 10 57 71.8 37 4 58 75.4 13 54 76.3 9 47 76.3 18 43 75.3 38 18 41 71 11 46 74.7 11 57 74.7 12 45 69.9 39 19 60 80.9 11 55 68.5 12 51 68.5 11 54 72.5 40 7 52 77.7 2 56 79.4 8 50 79.4 2 49 74.3 41 3 54 81.2 3 57 68.7 10 59 68.7 13 60 77.6 42 17 56 77.3 9 45 76.5 4 57 76.5 9 43 79.7 43 10 59 79.8 15 46 78.6 18 46 78.6 14 41 69.6 44 16 48 76.5 11 51 74.7 12 42 74.7 11 42 72.5 45 14 56 77.8 6 53 79.7 10 44 79.7 11 51 79.6 46 6 54 69.7 3 49 84.1 7 47 84.1 13 49 77.1 47 14 51 78.5 4 39 70.5 9 65 70.5 10 65 74.8 48 11 41 76.3 10 61 73.4 10 57 73.4 11 59 79.2

8086汇编语言程序设计

实验1 简单汇编语言程序设计 一、实验目的与要求 1.熟悉汇编语言运行、调试环境及方法。 2.掌握简单汇编语言程序的设计方法。 3.熟悉调试工具DEBUG,并运用DEBUG 工具调试程序。 二、实验内容 根据下列要求,编写汇编源程序,汇编连接汇编源程序,并利用DEBUG 工具调试程序,验证程序的正确性。 1. 若X、Y、R、W 是存放8 位带符号数字节单元的地址,Z 是16 位字单元的 地址。试编写汇编程序,完成Z←((W-X) ÷5-Y)?(R+ 2) 。 2.试编写一个程序,测试某数是否是奇数。如该数是奇数,则把DL 的第0 位置1,否则将该位置0。 三、实验报告要求 1.程序算法流程图。 2.源程序清单。 3.程序运行结果。 4.调试过程中遇到的问题和解决的方法。

实验2 分支及循环程序设计 一、实验目的与要求 1.熟悉汇编语言运行、调试环境及方法。 2.掌握分支程序和循环程序的设计方法。 3.熟悉调试工具DEBUG,并运用DEBUG工具调试程序。 二、实验内容 根据下列要求,编写汇编源程序,汇编连接汇编源程序,并利用DEBUG工具调试程序,验证程序的正确性。 1.编写汇编程序,统计某存储区若干个数据中英文字母的个数,并将结果在屏幕上显示。 2.从键盘任意输入一组字符数据,请编写汇编程序将该组数据加密后在屏幕上显示。参考加密方法是:每个数乘以2。(说明:本题的加密方法,同学们可以自己拟定) 三、实验报告要求 1.程序算法流程图。 2.源程序清单。 3.程序运行结果。 4.调试过程中遇到的问题和解决的方法。

实验3 子程序程序设计 一、实验目的与要求 1.熟悉汇编语言运行、调试环境及方法。 2.掌握子程序的设计方法。 3.熟悉调试工具DEBUG,并运用DEBUG工具调试程序。 二、实验内容 根据下列要求,编写汇编源程序,并利用DEBUG工具调试程序,验证程序的正确性。 1.编程以十进制形式和十六进制形式显示AX的内容,并把两个显示功能分别封装成子程序dispDEC和dispHEX。 2.设在以EXAMSCORE为首地址的数据缓冲区依次存放某班10名同学5门功课的成绩,现要统计各位同学的总分,并将总分放在该学生单科成绩后的单元,并调用第1个程序封装好的子程序,以十进制方式显示统计情况,显示格式自行设计。请编程完成此功能。数据缓冲区参考数据定义如下: EXAMSCORE DB 01 ;学号 DB 89,76,54,77,99 ;单科成绩 DW ? ;该学生的总分 DB 02 ;学号 DB 79,88,64,97,92 ;单科成绩 DW ? ;该学生的总分 三、实验报告要求 1.程序算法流程图。 2.源程序清单。 3.程序运行结果。 4.调试过程中遇到的问题和解决的方法。

汇编语言程序设计实验篇emu

1.汇编语言程序设计实验篇 1.1.汇编系统软件简介 Emu8086-Microprocessor Emulator是集源代码编辑器、汇编/反汇编工具以及debug 的模拟器。它能模拟一台"虚拟"的电脑运行程序,拥有独立的“硬件”,避免访问真实硬件。该软件兼容Intel的下一代处理器,包括PentiumII、Pentium4。利用该软件提供的调试工具,能够单步跟踪程序,观察程序执行过程中寄存器、标志位、堆栈和内存单元的内容。 1.1.1创建程序 https://www.wendangku.net/doc/a94621992.html, TEMPLATE程序 本章与指令相关的实验都是用COM TEMPLATE类型的程序完成的。打开emu8086,在“welcome…”对话框中,单击按钮,创建文件。 在“choose code template”对话框中,选择“COM template-simple and tiny executable file format, pure machine code.”后,单击按钮。

在如所示的编辑界面中,在“;add your code here”部分输入相应的指令,第一条指令默认的偏移地址为100h。 输入全部指令后,单击按钮,保存相应的程序段。 2.EXE TEMPLATE程序 本章与DOS功能调用和汇编源程序相关的实验都是用EXE TEMPLATE程序完成的。打开emu8086,在“welcome…”对话框中,单击按钮,创建文件。

在“choose code template”对话框中,选择“EXE template-advanced executable file.header: relocation, checksum.”后,单击按钮。 在如图所示的编辑界面中,已经可以给出了源程序的框架,包含数据段、堆栈段和代码段的定义以及必要的功能调用等,在“add your data here”和“;add your code here”部分可以分别输入相应的变量定义和指令。

环境工程专业实习报告

环境工程专业实习报告 实习目的:借助老师的讲解、操作指导下结合实地的参 观演练,让我们对小型污水处理池的方法掌握,对污水处理 的各种方式有所了解并将所学到的知识加以运用。从污水的 概括、污水源、以及各种污染物和污染指标的分析;掌握处理的原理及处理污水的各种指标,以及对污水处理的各种分 析和讨论。 实习的内容和经过:学校的污水主要是食堂产生的废水, 主要是食堂的废水;比如洗碗筷后,带有一定的洗洁精的废 水;尤其是油污较多的废水要进行除油和生化处理,从而达 到亲固变成亲水的目的。 废水处理流程:隔油池——>后续处理——>洗菜——>污水井——>调节池——>排水管网——>总排水口——>总排水管网(市政)。 在北群楼实验室2楼,通过老师讲解原理,巩固和加深 对地下水赋存的场所和运移的通道的理解,了解地下水的分 布、埋藏和运动特征。通过本次实验使我们加深对孔隙度、 给水度和持水度的了解,掌握室内测定基本方法,在实验过 程中认真观察和记录,分析本次实验后面的相关问题,写出 实验报告,相见报告。 在主楼微生物实验室,实习的主要内容是亲手制作民心 河水样中的浮游生物,就包括利用压滴法制作标本片,观察

微生物的个体形态,进一步熟悉和掌握显微镜的操作方法。 中间夹杂着培养基的配制和灭菌,要求熟悉玻璃器皿的洗涤 和灭菌前的准备工作,加深对平板的制作和平板的划线法的 掌握。 在惠馨楼前林荫道,实习的主要内容是整个专业学生组 织的关于第34届“世界环境日”的环保教育宣传活动,通过这个活动加深我们对世界环境的认识,也是加深广大师生 对现今世界地球环境的现状的认识。这次活动的主题定为 “节能减排关爱地球让我们行动起来”,旨在让大家通过身边的一些小事达到环境保护的目的。我们通过挂出多幅关于 环境保护的图片,拉条幅,发传单,现场签名等形式的活动 来感召大家行动起来。由于活动准备不是很充分,在活动形 式上有袭旧的缺陷,新颖性不是太好。但是我想通过这次活 动的举行,将此次世界环境日的社会影响力更加扩展。我们 相信,环保警钟之声已响彻于师生之心,只要大家积极的参与,从身边小事做起,创建绿色家园不再是梦想,实现“节 能减排,关爱地球让我们行动起来”的目标不再遥远,让我 们共同努力,为建设美好校园而奉献自己的力量。 在校园内,实习主要内容是岩土力学强度实验和轻型动 力初探实验。这两个实验全是土木工程专业的基础实验,作 为环境工程专业的学生只要掌握其基本原理和过程,学会使 用点荷载仪和轻型动力初探装置的使用,在实验过程中认真

第四章MCS-51汇编语言程序设计

第四章MCS-51汇编语言程序设计 重点及难点: 单片机汇编语言程序设计的基本概念、伪指令、单片机汇编语言程序的三种基本结构形式、常用汇编语言程序设计。 教学基本要求: 1、掌握汇编语言程序设计的基本概念; 2、掌握伪指令的格式、功能和使用方法; 3、掌握顺序结构、分支结构和循环结构程序设计的步骤和方法; 4、掌握常用汇编语言程序设计步骤和方法。 教学内容 §4.1汇编语言程序设计概述 一、汇编语言的特点 (1)助记符指令和机器指令一一对应,所以用汇编语言编写的程序效率高,占用存储空间小,运行速度快,因此汇编语言能编写出最优化的程序。 (2)使用汇编语言编程比使用高级语言困难,因为汇编语言是面向计算机的,汇编语言的程序设计人员必须对计算机硬件有相当深入的了解。 (3)汇编语言能直接访问存储器及接口电路,也能处理中断,因此汇编语言程序能够直接管理和控制硬件设备。 (4)汇编语言缺乏通用性,程序不易移植,各种计算机都有自己的汇编语言,不同计算机的汇编语言之间不能通用;但是掌握了一种计算机系统的汇编语言后,学习其他的汇编语言就不太困难了。 二、汇编语言的语句格式 [<标号>]:<操作码> [<操作数>];[<注释>] 三、汇编语言程序设计的步骤与特点 (1)建立数学模型 (2)确定算法 (3)制定程序流程图 (4)确定数据结构 (5)写出源程序 (6)上机调试程序 §4.2伪指令 伪指令是程序员发给汇编程序的命令,也称为汇编命令或汇编程序控制指令。 MCS- 51常见汇编语言程序中常用的伪指令:

第四章MCS-51汇编语言程序设计91 1.ORG (ORiGin)汇编起始地址命令 [<标号:>] ORG <地址> 2.END (END of assembly)汇编终止命令 [<标号:>] END [<表达式>] 3.EQU (EQUate)赋值命令 <字符名称> EQU <赋值项> 4.DB (Define Byte)定义字节命令 [<标号:>] DB <8位数表> 5.DW (Define Word)定义数据字命令 [<标号:>] DW <16位数表> 6.DS (Define Stonage )定义存储区命令 [<标号:>] DW <16位数表> 7.BIT位定义命令 <字符名称> BIT <位地址> 8.DA TA数据地址赋值命令 <字符名称> DATA <表达式> §4.3单片机汇编语言程序的基本结构形式 一、顺序程序 [例4-1]三字节无符号数相加,其中被加数在内部RAM的50H、51H和52H单元中;加数在内部RAM的53H、5414和55H单元中;要求把相加之和存放在50H、51H和52H单元中,进位存放在位寻址区的00H位中。 MOV R0 ,# 52H ;被加数的低字节地址 MOV R1 ,# 55H ;加数的低字节地址 MOV A ,@ R0 ADD A ,@ R1 ;低字节相加 MOV @ R0 , A ;存低字节相加结果 DEC R0 DEC R1 MOV A ,@ R0 ADDC A ,@ R1 ;中间字节带进位相加 MOV @ R0 , A ;存中间字节相加结果 DEC R0 DEC R1 MOV A ,@ R0 ADDC A ,@ R1 ;高字节带进位相加 MOV @ R0 , A ;存高字节相加结果 CLR A

新版汇编语言程序设计钱晓捷第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〕什么是汇编语言源程序、汇编程序、目标程序? 〔解答〕 用汇编语言书写的程序就称为汇编语言源程序;完成汇编工作的程序就是汇编程序;由汇编程序编 译通过的程序就是目标程序。

环境工程实习总结5000字

环境工程实习总结5000字 环境工程实习总结5000字 一、实习目的 通过这次的实习,将课堂的理论知识与实际操作的实践相结合,了解他们之间的异同点,也更清楚地理解到,理论学习与实践操作之间存有着怎样的差别。 众所周知,生产实习是学生大学学习很重要的实践环节,实习是每一个大学毕业生必的必修课,它不但让我们学到了很多在课堂上根本就学不到的知识,还使我们开阔了视野,增长了见识,为我们以后更好把所学的知识使用到实际工作中打下坚实的基础。通过生产实习使我更深入地接触专业知识,进一步了解环境保护工作的实际,了解环境治理过程中存有的问题和理论和实际相冲突的难点问题,并通过撰写实习报告,使我学会综合应用所学知识,提升分析和解决专业问题的水平。 二、实习内容安排 1、20xx年6月7日昆明市第二污水处理厂 2、20xx年6月8日林职院校园垃圾调查及处理方案设计 4、20xx年6月10日昆明市官渡区五甲塘湿地公园 5、20xx年6月11日实习小结及实习内容汇总PPT制作 三、实习小组人员安排 组长:############## 组员:############## 四、实习内容

(一) 污水处理厂参观学习 1、实习时间:8:00——14:00 2、实习地点:昆明市官南大道昆明市第二污水处理厂 3、实习内容 6月7日上午我们在学校实训楼前集合然后校车将我们带到了污水处理厂,进入工厂后我们先参观了位于办公楼大厅内的各类数据的展 示墙,然后来到大会议室工厂总工程师给我们细致的讲解了该厂的工 艺流程和实际操作的理论知识,随后,我们全体同学分为两个组由两 个工程带领我们实行了全厂参观。在参观的过程中我们遇到问题的时 候就即时的向工程师实行提问,工程师也耐心的向我们实行讲解。 昆明市第二污水处理厂于1995年建成投入使用,该厂位于官南大道,主要负责处理来官渡区周边居民的生活污水,处理水量设计值达 10万吨/ 天, 处理后水质可达到国家标准执行GB18918-2002-一级B标准,处理后的水排放至盘龙江。此污水处理厂使用的是A2/O工艺。 该厂的出水及进水指标也根据国家的相关规定有着明确的指标, 进水水质:BOD=180mg/L SS=250mg/L T-N=45mg/L T-P=5mg/L ,出水 水质:BOD≤15mg/L SS≤15mg/L T-N ≤8mg/L T-P≤1mg/L。 1、进水泵房 作用:提升污水的高度,是后面的流程从高到低形成一个高度差,从而流畅的运作。 二厂进水泵采用五台潜污泵, 水泵单机流量0. 43 m3/ s ,4 用1 备。PLC 系统能够根据水位控制水泵的开停,也可使泵按交替方式运行。其中一台泵的出水管上装有电控阀,能够在控制水位中起到微调作用。 如果来水量大于设计流量,水位异常升高时, 将通过溢流道溢出,溢流 水位是3.40 m 。

环境工程实习报告5000字

环境工程实习报告5000字 ,我们将时间为大家提供关于XX年实习报告的信息,敬请期待! 点击查看:实习报告网 相关推荐:实习报告范文| 实习报告模板| 会计实习报告 | 大学生实习报告 | 顶岗实习报告 | 金工实习报告| 毕业实习报告 | 土木工程实习报告 | 生产实习报告 |实习周记 | 3000字范文 环境工程实习报告范文5000字 实习对象:环境工程专业实习生 实习地点:旧食堂西侧食堂污水处理池 实习时间:20XX年6月2日--20XX年6月10日 实习目的:借助老师的讲解、操作指导下结合实地的参观演练,让我们对小型污水处理池的方法掌握,对污水处理的各种方式有所了解并将所学到的知识加以运用。从污水的概括、污水源、以及各种污染物和污染指标的分析;掌握处理的原理及处理污水的各种指标,以及对污水处理的各种分析和讨论。 实习的内容和经过:学校的污水主要是食堂产生的废水,主要是食堂的废水;比如洗碗筷后,带有一定的洗洁精的废水;尤其是油污较多的废水要进行除油和生化处理,从

而达到亲固变成亲水的目的。 废水处理流程:隔油池——>后续处理——>洗菜——>污水井——>调节池——>排水管网——>总排水口——>总排水管网(市政)。 在北群楼实验室2楼,通过老师讲解原理,巩固和加深对地下水赋存的场所和运移的通道的理解,了解地下水的分布、埋藏和运动特征。通过本次实验使我们加深对孔隙度、给水度和持水度的了解,掌握室内测定基本方法,在实验过程中认真观察和记录,分析本次实验后面的相关问题,写出实验报告,相见报告。 在主楼微生物实验室,实习的主要内容是亲手制作民心河水样中的浮游生物,就包括利用压滴法制作标本片,观察微生物的个体形态,进一步熟悉和掌握显微镜的操作方法。中间夹杂着培养基的配制和灭菌,要求熟悉玻璃器皿的洗涤和灭菌前的准备工作,加深对平板的制作和平板的划线法的掌握。 在惠馨楼前林荫道,实习的主要内容是整个专业学生组织的关于第34届“世界环境日”的环保教育宣传活动,通过这个活动加深我们对世界环境的认识,也是加深广大师生对现今世界地球环境的现状的认识。这次活动的主题定为“节能减排关爱地球让我们行动起来”,旨在让大家通过身边的一些小事达到环境保护的目的。我们通过挂出多幅关于

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

实验一基础汇编语言程序设计 实验目的 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)。

环境专业实训报告范文

环境专业实训报告范文 通过这次的实习,将课堂的理论知识与实际操作的实践相结合,了解他们之间的异同点,也更清楚地理解到,理论学习与实践操作之 间存有着怎样的差别。 众所周知,生产实习是学生大学学习很重要的实践环节,实习是 每一个大学毕业生必的必修课,它不但让我们学到了很多在课堂上根 本就学不到的知识,还使我们开阔了视野,增长了见识,为我们以后更 好把所学的知识使用到实际工作中打下坚实的基础。通过生产实习使 我更深入地接触专业知识,进一步了解环境保护工作的实际,了解环 境治理过程中存有的问题和理论和实际相冲突的难点问题,并通过撰 写实习报告,使我学会综合应用所学知识,提升分析和解决专业问题 的水平。 二、实习内容安排 1、20xx年6月7日昆明市第二污水处理厂 2、20xx年6月8日林职院校园垃圾调查及处理方案设计 4、20xx年6月10日昆明市官渡区五甲塘湿地公园 5、20xx年6月11日实习小结及实习内容汇总PPT制作 三、实习小组人员安排 组长: 组员: 四、实习内容 (一)污水处理厂参观学习 1、实习时间:8:00-14:00

2、实习地点:昆明市官南大道昆明市第二污水处理厂 3、实习内容 6月7日上午我们在学校实训楼前集合然后校车将我们带到了污 水处理厂,进入工厂后我们先参观了位于办公楼大厅内的各类数据的 展示墙,然后来到大会议室工厂总工程师给我们细致的讲解了该厂的 工艺流程和实际操作的理论知识,随后,我们全体同学分为两个组由 两个工程带领我们实行了全厂参观。在参观的过程中我们遇到问题的 时候就即时的向工程师实行提问,工程师也耐心的向我们实行讲解。 昆明市第二污水处理厂于1995年建成投入使用,该厂位于官南 大道,主要负责处理来官渡区周边居民的生活污水,处理水量设计值 达10万吨/天, 处理后水质可达到国家标准执行GB18918-2002-一级B标准,处 理后的水排放至盘龙江。此污水处理厂使用的是A2/O工艺。 该厂的出水及进水指标也根据国家的相关规定有着明确的指标, 进水水质:BOD=180mg/LSS=250mg/LT-N=45mg/LT-P=5mg/L,出水水质:BOD15mg/LSS15mg/LT-N8mg/LT-P1mg/L。 1、进水泵房 作用:提升污水的高度,是后面的流程从高到低形成一个高度差,从而流畅的运作。 二厂进水泵采用五台潜污泵,水泵单机流量0.43m3/s,4用1备。PLC系统能够根据水位控制水泵的开停,也可使泵按交替方式运行。其 中一台泵的出水管上装有电控阀,能够在控制水位中起到微调作用。如 果来水量大于设计流量,水位异常升高时,将通过溢流道溢出,溢流水位 是3.40m。 2、格栅

相关文档
相关文档 最新文档