河北工业大学汇编语言程序设计实验

河北工业大学汇编语言程序设计实验

ID:10263209

大小:169.50 KB

页数:25页

时间:2018-06-14

河北工业大学汇编语言程序设计实验_第1页
河北工业大学汇编语言程序设计实验_第2页
河北工业大学汇编语言程序设计实验_第3页
河北工业大学汇编语言程序设计实验_第4页
河北工业大学汇编语言程序设计实验_第5页
资源描述:

《河北工业大学汇编语言程序设计实验》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、河北工业大学汇编语言实验设计汇编语言程序设计实验实验一顺序与分支程序设计一、实验目的1)掌握顺序程序设计方法。2)掌握分支程序的结构及分支程序的设计,调试方法。3)学习数据传送及算术和逻辑运算指令的用法。4)熟悉在PC机上建立、汇编、连接、调试和运行汇编语言程序的过程。二、实验内容1)有一字变量BUF1是以原码表示的有符号数,要求将其转换为反码和补码,分别存入BUF2和BUF3单元,并在屏幕上显示出来。DATA  SEGMENT;数据段BUF1  DW 7898HBUF2  DW 4 DUP(0),0AH,0DH,'$'BUF3  DW 4 DUP(0),'$'DATA  ENDS;数据段

2、结束CODE  SEGMENT;代码段    ASSUME CS:CODE,DS:DATA;段寄存器关联说明伪指令BEGIN: MOV AX,DATA    MOV DS,AX河北工业大学汇编语言实验设计;将数据段的基地址装入数据段寄存器DS    MOV AX,BUF1;将字型变量BUF1的值装入AX寄存器    ADD AX,0;AX寄存器里的数据加0,以便进行转移测试        JS NEXT;判断(AX)的正负,若为负则转到NEXT,为正则往下顺序执行。        MOV BUF2,AX;为正,反码与原码一样        MOV BUF3,AX;为正,补码与原码一样   

3、     JMP  EEENEXT:AND AX,7FFFH;将符号位变为0        NOT AX;求反码        MOV BUF2,AX;将BUF1的反码装入BUF2        INC  AX;求补码        MOV BUF3,AX;将补码装入BUF3EEE:MOV CX,0004H;将0004H装入CX计数器寄存器中      MOV DI,OFFSET BUF2;将DI指向变量BUF2开始的存储单元      MOV DX, [DI];将DI所指的数据装入DX寄存器中      ADD DI,03;将DI指针下移三个字BBB:MOV AX,DX;将DX中的内容装

4、入AX寄存器中      AND AX,000FH;即使BUF2的低四位不变,其余均变为0      CMP AL,0AH;比较[AL]与0AH的大小,以便能正确转换为0-9的ASCII值      JB QQQ;若[AL]<0AH,则转到QQQ,否则,顺序执行      ADD AL,07H;因为[AL]>0AH,所以[AL]+07H,使得AL能转换成相应数字的ASCII值QQQ:ADD AL,30H;将[AL]转换成相应数字的ASCII值    MOV [DI],AL;将AL中的内容装入以DS中的内容为段基地址,以DI的内容为偏移地址的存储单元中    DEC DI;DI=DI-1,即

5、将DI指向前一个存储单元    PUSH CX;保存CX寄存器的内容    MOV CL,04H;给CL寄存器赋值为04H    SHR DX,CL;将[DX]逻辑右移四位河北工业大学汇编语言实验设计    POP CX;恢复CX寄存器的内容    LOOP BBB;循环判断语句,CX=CX-1,若CX不等于0,则转到BBB,将下一个低四位存入存储单元中,否则循环结束    MOV CX,0004H;给CX寄存器赋值为0004H    MOV SI,OFFSET BUF3;将SI指向变量BUF3开始的存储单元    MOV DX,[SI];将SI所指的数据装入DX寄存器中    ADD S

6、I,03H;将DI指针下移三个字CCC:MOV AX,DX;将DX中的内容装入AX寄存器中    AND AX,000FH;即使BUF3的低四位不变,其余均变为0   CMP AL,0AH;比较[AL]与0AH的大小,以便能正确转换为0-9的ASCII值   JB DDD;若[AL]<0AH,则转到DDD,否则,顺序执行   ADD AL,07H;因为[AL]>0AH,所以[AL]+07H,使得AL能转换成相应数字的ASCII值DDD:ADD AL, 30H;将[AL]转换成相应数字的ASCII值   MOV [SI],AL;将AL中的内容装入以DS中的内容为段基地址,以SI的内容为偏移地

7、址的存储单元中   DEC SI;SI=SI-1,即将SI指向前一个存储单元   PUSH CX;保存CX寄存器的内容   MOV CL, 04H;给CL寄存器赋值为04H   SHR DX, CL;将[DX]逻辑右移四位   POP CX;恢复CX寄存器的内容   LOOP CCC;循环判断语句,CX=CX-1,若CX不等于0,则转到CCC,将下一个低四位存入存储单元中,否则循环结束   MOV DX, OFFSET 

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。