code segment
assume cs:code
start:
mov ax,offset start ;准备设置地址
add ax,07c0h ;设置当前地址为07c0h
mov ds,ax ;设置数据段
mov ax,offset msg ;存入字符串偏移
mov si,ax ;设置要显示的字符
call display ;调用显示
jmp $ ;无限循环
display:
lodsb ;将 si寄存器内容存入 al
or al,al ;检测 al 为 0
jz disend ;为 0 表示 字符结尾时退出循环
mov ah, 0eh ;设置显示 0eh 显示字符
mov bx,0ch ;设置颜色 红色
int 10h ;启动 10h中断
jmp display ;显示下一个字符
disend: ;结束
ret
;字符定义
msg db 'Hello World',0 ;显示信息
code ends
end start
assume cs:code
start:
mov ax,offset start ;准备设置地址
add ax,07c0h ;设置当前地址为07c0h
mov ds,ax ;设置数据段
mov ax,offset msg ;存入字符串偏移
mov si,ax ;设置要显示的字符
call display ;调用显示
jmp $ ;无限循环
display:
lodsb ;将 si寄存器内容存入 al
or al,al ;检测 al 为 0
jz disend ;为 0 表示 字符结尾时退出循环
mov ah, 0eh ;设置显示 0eh 显示字符
mov bx,0ch ;设置颜色 红色
int 10h ;启动 10h中断
jmp display ;显示下一个字符
disend: ;结束
ret
;字符定义
msg db 'Hello World',0 ;显示信息
code ends
end start
看了几天汇编总算能把基本的写出来了,收获非常大,但是这还是起步而已,需要多多的学习才行