实验九 根据材料编程

1.补全程序t1.asm,完成在屏幕上输出内存单元中的十进制两位数

assume cs:code,ds:data

data segment

   db 12

   db 0,0 

data ends

code segment

start:

   mov ax,data

   mov ds,ax

 

   mov ah,0

   mov al,ds:[0]

   mov bl,10

   div bl

   mov ds:[1],al

   mov ds:[2],ah

 

   mov ah,2

   mov dl,ds:[1]

   add dl,30h

   int 21h

 

   mov ah,2

   mov dl,ds:[2]

   add dl,30h

   int 21h

 

   mov ax,4c00h

   int 21h

code ends

end start

 

经调试,运行结果如图所示

 

2.补全程序t2.asm,完成在屏幕上输出data段定义的5个十进制两位数。

 

循环5次,每次除以10,输出商 余数 空格,即可。

 

 

3.完成实验教材9

代码如下

mov ds,ax

mov ax,0b800H

mov es,ax

mov bx,0

mov di,0

mov cx,16

s0:mov ax,[bx]

mov es:[bx+720h][di],ax

mov al,2

mov es:[bx+721h][di],al

mov bx

inc di

loop s0

mov bx,0

mov cx,16

mov di,160

s1: mov ax,[bx]

mov es:[bx+720h][di],ax

mov al,36

mov es:[bx+721h][di],al

inc bx

inc di

loop s1

 

mov bx,0

mov cx,16

mov di,320

s2:mov ax,[bx]

mov es:[bx+720h][di],ax

mov al,113

mov es:[bx+721h][di],al

inc bx

inc di

loop s2

 

结果如图所示

 

实验总结:

每次实验直接去做都有很大的困难,应该是基础知识没有熟练掌握的缘故。

新学习的loop指令,div命令的用法意义还要仔细研究一下,才能明白。

应该还有很多隐藏的问题没有被发现,每发现 一个问题都需要思考一下背后的含义。

需要注意现存位置,定义好每个字符及属性信息等等等等,一个地方出错就不能显示出要的效果。

 

posted on 2018-12-14 21:48  日央  阅读(149)  评论(1编辑  收藏  举报