汇编helloword代码

ASSUME CS:CODES,DS:DATAS,SS:STACKS

DATAS SEGMENT
    ;此处输入数据段代码  
    msg db "first","k111",112
DATAS ENDS


STACKS SEGMENT
    ;此处输入堆栈段代码
STACKS ENDS


CODES SEGMENT
    ;这里表示告诉汇编编译器 这是程序的入口点
START:
    ;将定义的DATAS的首地址推入到DS寄存器
    MOV AX,DATAS
    MOV DS,AX
    ;此处输入代码段代码
    ;将ex拓展寄存器设置到0B800h 表示在显存 vga模式下显示
    mov ax,0B800h
    mov es,ax
    ;循环的控制次数是通过cx寄存器来控制
    mov cx,9
    ;这两个变量用于控制索引值
    mov si,0
    mov bx,0
    ;这里定义文字的字体样式 因为是8位 ax用来存字 是16为 采用低8位寄存器
    mov al,01000000b
    loopfor:
     ;一个字母占用一个字节 所以采用高8位寄存器
     mov ah,datas:[si]
     ;将字母推入显存
     mov es:[bx],ah
     ;将格式推入显存
     mov es:[bx+1],al
     ;索引叠加
     add bx,2
     add si,1
     
    loop loopfor
    
    
   
    ;这里表示中断 相当于c的 scanf
    MOV AH,4CH
    INT 21H
CODES ENDS
    END START
posted @ 2012-03-10 12:24  饺子吃遍天  阅读(292)  评论(0编辑  收藏  举报