摘要: 一、编程目标:在屏幕中间分别显示绿色、绿底红色、白底蓝色的字符串'welcome to masm!'。二、程序分析在屏幕中显示字符即是向显示缓冲区的对应区域写入字符。1、定位屏幕输出位置字符串长度为16,屏幕每行总共为80个字符的输出宽度。要使得居中,则字符左右要各空32个字符位置。即字符串首字符位于每行的第33个字符位,字符串占第33列到第48列。屏幕每页为25行,输出目标为3行,即三个字符串占第12、13、15行。即第一个字符串在显示缓冲区内起始位置为:(B8000H+11*80*2+32*2);第二行的起始地址为在第一行基础上加上80*2;第三行类推。2、字符信息的设置字 阅读全文
posted @ 2013-08-25 18:55 tsembrace 阅读(1703) 评论(0) 推荐(1) 编辑
摘要: 第9章 转移指令的原理一、8086转移指令的分类1、无条件转移指令,如jmp;2、条件转移指令,如jcxz;3、循环指令,如loop;4、过程;5、中断二、几种转移指令的详解*基础知识:补码在计算机系统中,数值一律用补码来表示(存储)。正数补码与原码相同,如十进制17;原码为0001 0001;其补码也为0001 0001;负数的补码最高位取1,剩余7位为将负数取绝对值按位取反后+1,得其补码(对8位补码)。如-1;最高位取1,绝对值7位为0000001,按位取反后为1111110;+1后为1111111;则-1的补码为11111111.也可知,对8位补码,其可表示的数值范围为-128~127 阅读全文
posted @ 2013-08-25 16:53 tsembrace 阅读(2525) 评论(2) 推荐(0) 编辑
摘要: 第八章 数据处理的两个基本问题一、寄存器*reg:表示寄存器。8086寄存器包括ax,bx,cx,dx,al,ah,bl,bh,cl,ch,dl,dh,ss,cs,es,ds,sp,bp,si,di;其中sreg表示段寄存器,包括ds,es,ss,cs.*只有bx,bp,si,di这四个寄存器可用来作为偏移地址寻址。且bx和bp不能同时使用,si和di不能同时使用,具体应用方式如下: [bx],[bp],[si],[di];[bx+si],[bx+di],[bp+si],[bp+di];[bx+si+idata],[bp+di+idata]..etc.*对于使用bx寻址的应用,段地址默认存在d 阅读全文
posted @ 2013-08-25 15:14 tsembrace 阅读(1559) 评论(0) 推荐(1) 编辑