- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
微机原理第十次_new
伪指令语句 程序员可以使用伪指令向汇编程序发出某些控制和操作指示,在汇编过程中完成相应的工作。 伪指令由汇编程序解释后完成相应的操作,汇编后不产生目的代码,经过汇编后得到的目的码程序中,伪指令已不复存在。 五类:方式类、数据类、条件类、宏指令类和列清单类,可见图表。 伪指令语句 1.数据定义伪指令 主要功能:为变量分配内存单元,也可以预置初值,或预留内存单元。 DB、DW、DD、DQ和DT(1,2,4,8,10) 格式: [变量名]伪指令名 操作数项表 可以由多个操作数组成,常数,表达式,字符串,?或带DUP的表达式。 伪指令语句 2段定义伪指令 段名 SEGMENT [定位类型][组合类型][类别名] …..;本段语句系列 段名 ENDS 伪指令语句 1.定位类型 (1)PAGE表示段的起始地址的低8位为00H,段基址能被256整除。 (2)PARA表示段的起始地址的低4位为0000B,段基址能被16整除。 (3)DWORD表示段的起始地址的低2位为00B,段基址能被4整除。 (4)WORD表示段的起始地址的低位为0B,段基址能被2整除。 (5)BYTE表示段的起始地址任意。 伪指令语句 2.组合类型 (1)PUBLIC在满足定位类型的前提下,本段与其他的同名段连接在一起,其连接的顺序由连接命令指定。 (2)COMMON本段与其他同名的分段在连接时有相同的起始地址,因此会产生一个覆盖段,覆盖段的长度是参与覆盖的各个分段中长度为最长的段的段长。 (3)STACK将所有同名段连接成一个连续段,作为堆栈段。 (4)AT表达式 表示本段的起始地址是由表达式计算出来的16位段基址。 (5)MEMORY表示本段将分配在与之连接在一起的其他段的最高地址。 伪指令语句 3.类别名 类别名由用户指定,且必须用单引号括起来。 4. 段寻址伪指令 ASSUME 段寄存器名:段名,段寄存器名:段名,…… 用于指示汇编程序哪些段是当前段以及这些段与段寄存器之间的联系,但并不能将段基址装入相应的段寄存器。 伪指令语句 5.过程定义伪指令 过程名 PROC 属性 …… RET 过程名 ENDP 伪指令语句 6.定位伪指令 ORG 表达式 用于指定汇编地址计数器的值。将表达式的值赋给汇编地址计数器,表达式中可以包括当前汇编地址计数器的值$,表达式的值必须为正数。ORG伪指令后的数据或指令代码以表达式的值作为初始的段内偏移地址。 关于上机 编写源程序 可用计算机系统中各种能编辑文本文件的编辑器来编辑汇编源程序。常用的编辑器有:EDIT、Q、Word、记事本、写字板等。源文件的后缀为:.ASM。 汇编程序 当源程序编写好后,可用MASM命令来汇编该源程序。如果源程序没有语法错误,那么,将生成目标文件(.OBJ文件),为最终生成可执行文件作准备,但如果源程序有错误,汇编程序将显示出错误位置和原因,也可用列表文件(.LST文件)来查看出错位置和原因。 关于上机 连接程序 当由源文件汇编成功后,即可用连接程序(LINK.EXE)生成其可执行文件,这种方法需要确认连接过程中的各种文件名,如果使用文件名的默认值,那么直接按“回车”键即可。在上面四个文件名中,最重要二个文件名是:执行文件名和库文件名。一般情况下,无需更换最终生成的执行文件名;如果在连接过程中需要其它的库文件,则在显示第三行提示时,输入所需要的库文件名。 关于上机 运行程序 当要运行所生成文件时,可直接输入其文件名即可。 DEBUG 调试 详见MASM.doc 实例 32位数相加 e4_1.asm 带符号表达式运算 e4_3.asm 串操作(转化字符中的a为A) e4_17.asm 子程序(十六位二进制转ASCII码) e8_1a.asm 实例 子功能调用 时间显示 e6_t.asm 绘制屏幕 e6_6.asm 键盘输入 e6_7.asm 多媒体指令集 从软件层面来讲,SIMD指令具体表现为Pentium Ⅱ处理器引入的MMX(Multiple Media Extensions)指令集,这些指令可以实现64位的并行处理。还有Pentium Ⅲ处理器引入的SSE(Streaming SIMD Extensions)指令集,这些指令可以实现128位的并行浮点运算。以及后来在Pentium 4处理器引入的SSE2指令集,这些指令可以实现128位的并行定点运算。现在新的处理器又引入了SSE3指令集,可见进行SIMD并行处理是当前处理器发展的趋势。 多媒体指令集 从硬件层面来讲,SIMD指令的实现是以在处理器中增加了对应的高位宽寄存器和相应的处理单元为基础的。1997年,Pentium Ⅱ处理器引入了
文档评论(0)