目录 上一页 下一页 下一章

第5章 子程序和串处理 -115-


exit:


main
code

jmp

mov
int
endp
ends
end
disploop

ah,4ch
21h


main
;处理下一个字符

;结束程序




  这个程序将一个字符串传送到0B800:1616处,每两个字符之间有一个数据02H。再传送字符串数据之前,程序先在0B800:0处开始的4KB存储器中填了一串"0720H"。用DEBUG跟踪这个程序,注意比较一下有REP前缀的STOS指令与没有前缀的STOS有何不同。
  此程序的输出结果很吸引人,如果显示器上满是文字,那么执行这个程序后显示器上的杂乱信息将被一扫而光,同时屏幕上会出现一行文字,可不要被久违了的彩色惊呆了哟。
  这个程序只是向内存中的一个特定位置存放了一些数据,为什么屏幕上会出现彩色的文字?文字的位置和ES:DI中的地址有关系吗?每两个ASCII码之间的数字02H又是什么呢?所有这些问题将在下一章详细地讨论。
本章结束语
  到这一章为止我们已经了解了8086/88所有的寄存器,这一章的要点有以下这样几点:
  (1)子过程数据传递的一般方式;
  (2)特殊的子过程;
  (3)串处理指令的特性;
  (4)8086/88的所有寄存器的特点及应用。

  再次提醒大家注意,汇编语言与操作系统及硬件的关系十分密切,如果不能将这三者好好结合起来无论如何是无法掌握汇编语言的。













Copyright © 2004-2015 Reanimator www.cookmoon.org

目录 上一页 下一页 下一章