zoukankan      html  css  js  c++  java
  • x8086汇编实现dos清屏(clear screen)

    题目要求:x8086汇编实现dos下的清屏功能

     

    80X25彩色字符模式显示缓冲区的结构:

      在内存地址结构中,B8000H~BFFFFH共32KB的空间,为80x25彩色字符模式的显示缓冲区。向这个地址空间写入数据,写入的内容将立即出现在

    显示器上。

      在80x25彩色模式下,显示器可以显示25行,每行80个字符,每个字符可以由256中属性。

      80x25模式下,一屏的内容在显示缓冲区共4000个字符。

     

    字母:  ascii 0 为 NUL, 字符解释-->空

    颜色:  0  即将前景色和背景色都设置为黑色

      

    通过一个字节来显示字符的颜色
    
      0        0  0  0    0     0  0  0
    
      闪烁    R  G  B   高亮  R G  B
    
         -背景色--         -前景色-

    代码:

     1 assume cs:code,ss:stack,ds:data
     2 
     3 data segment
     4 
     5 data ends
     6 
     7 stack segment
     8         db 16 dup (0)
     9 stack ends
    10 
    11 code segment
    12 
    13  start: mov ax,stack
    14         mov ss,ax
    15         mov sp,16
    16 
    17         mov ax,data
    18         mov ds,ax
    19 
    20         jmp cls
    21 
    22  next:  mov ax,4c00h
    23         int 21h
    24 
    25 ;----------------------------------------
    26  cls:   mov bx,0b800h        ;显存地址 0xb800
    27         mov es,bx
    28 
    29         mov bx,0
    30 
    31         mov cx,4000           ;文本模式显示25行,80字   即80*25*2 = 4000字节
    32    s:   mov dl,0            ;将NULL字符,即ASCII 0 放入低位
    33         mov dh,0            ;将颜色 0 即 黑色 放入高位    
    34         mov es:[bx],dx        
    35         add bx,2
    36         loop s
    37 
    38         jmp next
    39 
    40 
    41 
    42 
    43 code ends
    44 
    45 end start

     

       

     

  • 相关阅读:
    【ContestHunter】【弱省胡策】【Round2】
    PKUSC滚粗记
    【BZOJ】【3157】&【BZOJ】【3516】国王奇遇记
    【BZOJ】【2219】数论之神
    【POJ】【2601】Simple calculations
    【POJ】【1635】Subway Tree Systems
    【POJ】【2449】Remmarguts' Date
    【BZOJ】【1004】【HNOI2008】Cards
    【Burnside定理】&【Pólya定理】
    【Tsinsen】【A1365】森林旅店
  • 原文地址:https://www.cnblogs.com/xautxuqiang/p/5468105.html
Copyright © 2011-2022 走看看