欢迎光临散文网 会员登陆 & 注册

0162-显示 hello world

2023-08-13 22:00 作者:jiangbo4444  | 我要投稿

环境

  • Time 2022-11-08

  • WSL-Ubuntu 22.04

  • QEMU 6.2.0

  • NASM 2.15.05

前言

说明

参考:《x86汇编语言:从实模式到保护模式》李忠

参考:https://wiki.osdev.org/Printing_To_Screen

目标

在屏幕上显示 hello 字符串。

显存

彩色的文本显示内存的地址是 0xB800,只要向这个地址写入字符和颜色,就可以直接显示。 其中使用两个字节来显示一个字,第一个字节对应字符的 ASCII 码,第二个对应具体的颜色。

颜色

汇编代码

在这里,借助了数据段 ds 的地址,不指定数据段的情况下,默认使用 ds 访问。

启动 QEMU

之前是通过 -nographic 启动的,因为现在需要显示,所以需要换个参数:

qemu-system-i386 -s -S -drive format=raw,file=main -curses

效果

可以看到,在最开始的地方,绿色的颜色显示了 hello 字符串。

显示hello

总结

在屏幕上显示了绿色的 hello 字符串。

附录


0162-显示 hello world的评论 (共 条)

分享到微博请遵守国家法律