利用 Masm 编写 引导盘 Boot Sector 显示 Hello World

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


看了几天汇编总算能把基本的写出来了,收获非常大,但是这还是起步而已,需要多多的学习才行

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值