x86汇编--(八)指定位置打印字符串(七改)
来源:互联网 发布:淘宝同款图片怎么处理 编辑:程序博客网 时间:2024/05/22 15:03
;之前那个题目看错了,原来时要在8行3列这个地方打印字符串;0 0写了几个小时的成果- - (╯-_-)╯╧╧ 晕死assume cs:codesg,ds:datasg,ss:stackdatasg segmentdb 'Welcome to masm! ',0datasg endsstack segmentdw 64 dup(0)stack endscodesg segmentstart:mov dh,8;行号mov dl,3;列数mov cl,2;绿色mov ax,datasgmov ds,axmov si,0;ds:si指向字符串的首地址mov ax,stackmov ss,axmov sp,128call show_strmov ax,4c00hint 21h;打印dh行dl列的字符串show_str:push cxpush simov ax,0b800hmov es,ax;es定位显存基地址mov ax,0mov al,160dec dh;行号在显存下从0开始,所以减一mul dh;mov bx,ax;把放在ax中的乘积放到bx中mov al,2;每个字符占2个字节mul dl;定位列sub ax,2;每个字符占2个字节add bx,axmov ah,cl;低位存放颜色,因为cl下面要用来临时存放要处理的字符mov di,0;es:[bx+di]指向要写入的显存的地址call printpop sipop cxret;返回;打印字符串print:mov cl,[si]mov ch,0jcxz ok;判断当前字符是否到0,到了就停止这个打印mov al,[si]mov es:[bx+di],ax;写入显存显示inc siadd di,2jmp short print;如果没打印完,就继续往后打印ok:retcodesg endsend start
0 1
- x86汇编--(八)指定位置打印字符串(七改)
- x86汇编--(七)仿高级语言之for循环嵌套打印字符串
- x86汇编--(七)高仿for循环嵌套打印字符串
- x86汇编--(九)打印整型数据
- linux平台学x86汇编(八):条件跳转
- linux平台学x86汇编(七):堆栈的使用
- 汇编(X86-64)
- linux平台学x86汇编(十一):字符串的传送
- 字符串匹配替换(指定匹配位置)
- 从指定位置删除指定长度的字符串(串)
- 从指定位置删除指定长度的字符串(串)
- x86内联汇编(一)
- 80x86汇编编程:显示数据区字符串中第一个空格的位置
- 字符串处理算法(三)按指定位置交换字符串两部分的位置
- linux平台学x86汇编(十二):字符串的存储与加载
- linux平台学x86汇编(十三 ):字符串的比较与搜索
- GCC&&G++ C && C++ 内嵌汇编和调用汇编函数(子程序)的几种实现方式(x86,ARM自己对照改)
- 文件写入(80x86汇编实现)
- 决策树算法:ID3和C4.5
- HDU 5662 YJQQQAQ and the function
- HDU 1042 N! (大数乘)
- android Html Package机制说明
- 将博客搬至CSDN
- x86汇编--(八)指定位置打印字符串(七改)
- url、src、href定义以及使用区别
- Python之fileinput
- 杭电4505
- [LeetCode]15. 3Sum
- Linux下python的升级及多版本管理
- Go语言的方法接受者类型用值类型还是指针类型?
- 笨木头的Unity3d地形介绍
- PHP入门学习笔记之—— PHP 类与对象 (上)