8088实验指导书电子版.docx

上传人:b****1 文档编号:2474888 上传时间:2022-10-29 格式:DOCX 页数:68 大小:634.22KB
下载 相关 举报
8088实验指导书电子版.docx_第1页
第1页 / 共68页
8088实验指导书电子版.docx_第2页
第2页 / 共68页
8088实验指导书电子版.docx_第3页
第3页 / 共68页
8088实验指导书电子版.docx_第4页
第4页 / 共68页
8088实验指导书电子版.docx_第5页
第5页 / 共68页
点击查看更多>>
下载资源
资源描述

8088实验指导书电子版.docx

《8088实验指导书电子版.docx》由会员分享,可在线阅读,更多相关《8088实验指导书电子版.docx(68页珍藏版)》请在冰豆网上搜索。

8088实验指导书电子版.docx

8088实验指导书电子版

实验一系统认识实验

一、实验目的

1.掌握TND86/88教学系统的基本操作。

二、实验设备

1.TND86/88教学实验系统一台。

2.电子计算机一台

三、实验内容及步骤

从3500H内存单元开始建立0—15共16个数据。

实验源程序如下:

(A1-1.ASM)

STACKSEGMENTSTACK;8088宏汇编程序

DW64DUP(?

);定义堆栈段

STACKENDS

CODESEGMENT;定义代码段

ASSUMECS:

CODE

START:

MOVDI,3500H;程序开始设数据首址

MOVCX,0010H;字节数送入CX中

MOVAX,0000H

SAHF

Al:

MOV[DI],AL;写入一字节

INCDI;修改地址指针

INCAX;修改数据

DAA;十进制调整

LOOPA1;未填完转移

A2:

JMPA2

CODEENDS;代码段结束

ENDSTART;程序结束

实验步骤

1、使用串行通信电缆将实验系统与计算机(PC)微机相连。

2、打开WMD86进入系统环境如图1-1所示。

图1—1

3、点击‘选择串口’如图1—2所示。

可选串行口l或串行口2(计算机

后面与UBS接口相邻的为串行口1)。

图1—2

4、点击文件,打开新建源程序,如图1—3所示。

图1—3

5、输入源程序并保存为DQ.asm.如图1—4所示。

图1—4

6、点击‘编译’,对源程序进行汇编、连接,生成可执行文件DQ.EXE如图1—5所示。

图1—5

7、汇编、连接无误后点击‘窗口’,如图1—6所示。

图1—6

8、点击‘调试窗口’如图1-7所示,进入调试窗口。

图1—7

9、按实验系统(箱)中的RESET键或计算机键盘上的Ctrl+Break键出现‘welcometoyou!

’界面,说明实验系统(箱)和计算机通信成功,如图1—8所示。

图1—8

10、装入DQ.EXE程序,确认程序段地址CS:

0000及偏移量地址IP:

2000。

11、提示装载完毕后使用U0000:

2000命令进行反汇编,检查程序是否正

确装入。

12、在“>”提示符下键入G=0000:

2000(在系统默认段址CS=0000情况下,也可直接键入G=2000)即可运行程序。

13、使用D0000:

3500可查看3500H~350FH单元中的内容是否为0~15,共16个数。

可用E3500修改内存单元中的内容。

14、在以后的实验中将会用到示波器,示波器窗口如图1—9所示。

图1—9

实验二数码转换编程及程序调试

一、实验目的

1.掌握不同进制数及编码相互转换得程序设计方法,加深对数码转换的理解。

2.熟悉键盘使用方法。

3.熟悉调试程序的方法。

二、实验设备

1.TDN86/88教学实验系统一台

2.电子计算机一台

三、实验内容及步骤

计算机输入设备输入的信息一般是由ASCII码或BCD码表示的数据或字符,CPU一般均用二进制数进行计算或其他信息处理,处理结果的输出又必须依照外设的要求变为ASCII码、BCD码或七段显示码等。

因此,在应用软件中,各类数制的转换和代码的转换是必不可少的。

计算机与外设间的数码转换关系如图2-1所示,数码对应关系如表2-1所示。

 

图2-1数码转换关系

 

表2-1数码对应关系

十六进制数

BCD码

二进制机器码

ASCII码

七段码

共阳

共阴

0000

0000

30H

40H

3FH

0001

0001

31H

79H

06H

0010

0010

32H

24H

5BH

0011

0011

33H

30H

4FH

0100

0100

34H

19H

66H

0101

0101

35H

12H

6DH

0110

0110

36H

02H

7DH

0111

0111

37H

78H

07H

1000

1000

38H

00H

7FH

1001

1001

39H

18H

67H

1010

41H

08H

77H

1011

42H

03H

7CH

1100

43H

46H

39H

1101

44H

21H

5EH

1110

45H

06H

79H

1111

46H

0EH

71H

1.将ASCII码表示的十进制数转换为二进制数

十进制表示为:

Dn×10n+Dn-1×10n-1+…+D0×100=∑Di×10i

(1)

Di代表十进制数1,2,3,…9,0;

上式转换为:

∑Di10i=((…(Dn×10+Dn-1)×10)+Dn-2)×10+…+D1)×10+D0

(2)

由式

(2)可归纳十进制数转换为二进制的方法:

从十进制数的最高位Dn开始作乘10加次位的操作,依次类推,则可求出二进制数结果。

程序流程及参考程序如下:

(规定:

被转换的ASCII码十进制数存放在3500H-3504H单元中,转换结果存在于3510-3511H单元中。

(A2-1.ASM)

STACKSEGMENTSTACK

DW 64 DUP(?

STACKENDS

CODESEGMENT

ASSUMECS:

CODE

START:

MOV SI,3500H

MOVDI,3510H

MOVBX,000AH

MOVCX,0004H

MOVAH,00H

MOVAL,[SI]

SUBAL,30H

A1:

IMULBX

ADDAL,[SI-01]

SUBAL,30H

INCSI

LOOPA1

MOV[DI],AX

A2:

JMPA2

CODEENDS

     ENDSTART    N

 

 

实验步骤

(1)输入程序并检查无误,经汇编、连接后装入系统。

(2)在3500-3504H单元存入十进制数12的ASCII码,即E3500↙,并输入3030303132。

(3)G=0000:

2000↙,运行程序,并用CTRL+C来中断程序,返回监控状态。

(4)用D3510↙查看结果,应为:

3510 0C 00。

(5)反复试几组数,考察程序的正确性。

2.将十进制数的ASCII码转换为BCD码

设从键盘输入的五位十进制数的ASCII码已存放在3500H起始的内存单元内,把它转换为BCD码后,再按位分别存入350AH起始的内存单元内。

若输入的不是十进制数的ASCII码,则对应存放结果的单元内容为“FF”。

由表2可知,一字节ASCII码取其低四位即变为BCD码。

实验程序及流程如下:

(A2-2.ASM)

STACK SEGMENT STACK

        DW 64 DUP(?

STACK ENDS

CODE SEGMENT

      ASSUME CS:

CODE

START:

MOV CX,0005H:

循环计数器赋初值

    MOV DI,3500H    :

ASCII码首址

A1:

  MOV BL,OFFH   :

将错误标志送入BL

    MOV AL,[DI]     :

送ASCII码至AL

CMPAL,3AH      :

比较AL与3A

JNBA2         :

不低于3A则转A2

SUBAL,30H       :

低于3A则取ASCII码低4位

JBA2          :

低于30则转A2

MOVBL,AL       :

否则AL内容送入BL,取代FF

A2:

MOVAL,BL       :

结果或错误标志送入AL

MOV[DI+OAH],AL

INCDI

LOOPA1

A3:

JMPA3

CODEENDS

ENDSTART

实验步骤

(1)输入程序并检查无误,经汇编、连续后装入系统。

(2)在3500-3504H单元中存放五位十进制数的ASCII码,             即:

E3500↙,并输入31、32、33、34、35。

(3)G=0000:

2000↙,运行程序。

(4)D350A↙,显示结果为:

0000:

350A 01 02 03 04 05 CC…

(5)反复试几组数,考察程序的正确性。

 3.将十六位二进制数转换为ASCII码表示的十进制数

十六位二进制数的值域为0-65535,最大可转换为五位十进制数。

算法:

五位十进制数可表示为:

ND=D4×104+D3×103+D2×102+D1×10+D0

D1:

表示十进制数0~9

 因此,将十六位二进制数转换为五位ASCII码表示的十进制数,就是求D1-D4,并将它们转化为ASCII码。

实验程序及流程如下:

(设源数存于3500-3501H单元中,结果数存于3510-3514H单元中)

(A2-3.ASM)

STACK SEGMENT STACK

DW 64 DUP (?

STACK ENDS

CODE SEGMENT

     ASSUME CS:

CODE

START:

 MOV SI,3500H

     MOV DX,[SI]

MOVSI,3515H

A1:

DECSI

MOVAX,DX

MOVDX,0000H

     MOV CX,000AH

     DIV CX

     XCHG AX,DX

     ADD AL,30H

     MOV[SI],AL

CMPDX,0000H

JNEA1

A2:

CMPSI,3510H

JZA3

DECSI

MOVAL,30H

MOV[SI],AL

JMPA2

A3:

JMPA3

CODEENDS

ENDSTART

 

              

                    

N

 

     

实验步骤

(1)输入程序并检查无误,经汇编、连接后装入系统。

(2)在3500-3501H单元中存放0C00,运行程序并检查结果,应看到3510H-3514H单元中的数依次为30 30 30 31 32。

(3)反复试几组数,并运行程序,观察结果。

  

4.十六进制数转换为ASCII码

设经过CPU处理后的十六进制数存放于起始地址为3500H的内存单元中,把它们转换成ASCII码后,再分别存入起始地址为350AH的内存单元中。

从表2-1中可知十六进制数加30H即可得到0H-9H的ASCII码,而要得到AH-FH的ASCII码,则需再7H。

实验程序及流程如下:

(A2-4.ASM)

 STACK SEGMENT STACK

       DW 64 DUP(?

 STACK ENDS

 CODE SEGMENT

ASSUME CS:

CODE

 START:

MOV CX,0004H

     MOV DI,3500H

     MOV DX,[DI]

A1:

MOVAX,DXY

ANDAX,000FH;取低四位值

CMPAL,0AH  ;判断是否<9

JBA2    ;若在0-9范围内,则转A2

ADDAL,07H  ;若为“A-F”,加7

A2:

ADDAL,30H 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1