HelloWorld

1.打印helloword

assume cs:codesg,ds:data

data segment

str1 db 'hello world$' //定义helloworld。 $代表字符串结束

data ends

codesg segment

start:mov ax,data

mov ds,ax

mov dx,offset str1 

mov ah,09h //09h代表的功能是打印会从ds:dx处取字符串

int 21h //调用中断

mov ah,4ch //4ch代表程序结束

int 21h

codesg ends

end start

2.利用字符缓冲输出字符

start:mov bx,0b800h

mov es,bx

mov bx,13*160+40*2 //每行放80个字,每个字包括字符和颜色各占一个字节,所以第13行的行地址为13*80*2;第40列的列地址为40*2

mov byte ptr es:[bx],'!'

mov byte ptr es:[bx+1],0

mov byte ptr es:[bx+2],'*'

mov byte ptr es:[bx+3],0

mov ax,4c00h

int 21h

注意80*25彩色字符模式下显示字符串的汇编字符属性为:F RGB I RGB 闪烁 背景颜色 亮度 前景颜色

注意:当你往b800输入内容时先要执行cls清屏,另外命令行键入的文字也会对b800这块内存造成影响

最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容