《微机原理与接口实验》实验报告
第一部分 软件实验
实验一、实验二
1. 实验目的:熟悉软件环境,能够在Dos系统下编写汇编语言程序和汇编的全过程。 2. 实验内容:DOS环境下汇编的快速入门 3. 实验步骤:
C:\\D:〈Enter〉建议大家的文件都建立在最后一个盘,如D盘,如果建在C:,
1)进入DOS环境(启动菜单中选择),然后进入最后一个盘中,如D盘: 计算机重启后会被系统自动删除。 3)编辑汇编源文件:d:\\Edit xxx.asm 4)编译:d:\\Tasm xxx.asm 5)链接:D:\\tlink xxx.obj 6)运行.exe:D:\\xxx.exe 7)调试:D:\\TD xxx.exe
4. 实验代码:在屏幕上显示Hello World!
Stack
segment stack Dw 32 dup(0)
Stack ends Data Data Code Begin
segment
OBUF DB ‘Hello World! $’ endp segment
Assume ss:stack,ds:data,cs:code proc far Push ds Sub ax,ax Push ax Mov ax,data Mov ds,ax
MOV DX,OFFSET OBUF MOV AH,9 INT 21H Ret
Begin endp Code ends
2)运行鼠标驱动程序D:\\mouse
End begin
5. 实验结果:屏幕上显示‘Hello World !’
6. 上机试题
1)从键盘输入一个2位无符号的16进制数(00H~FFH),然后在显示器上同时以二
进制和十进制形式显示出来。例如:
Please input N(00H-FFH): 9B N = 9Bh = 10011011B = 155
segment stack dw 32 dup(0) ends segment
DB 0DH,0AH,'$' DB 3,0,3 DUP(0) DB 10 DUP('$') DB 4 DUP('$') DB 'N = $' DB ' = $'
;回车换行
实验代码:
stack data ENDL
stack
IBUF_HEX OBUF_BIN OBUF_BCD STR_OUT1 STR_OUT2 data
code segment begin proc far
STR_IN_HEX DB 'Please input N (00H~FFH):$'
ends
assume ss:stack, cs:code, ds:data push ds sub ax,ax
push ax ;保存psp地址 mov ax,data mov ds,ax
MOV DX,OFFSET STR_IN_HEX ;提示用户输入十六进制数,如9B MOV AH,9 INT 21H MOV AH,10
MOV DX,OFFSET IBUF_HEX ;接收输入的十六进制数