当前位置:首页 » 《随便一记》 » 正文

汇编语言实验2:顺序程序设计

15 人参与  2022年11月14日 11:11  分类 : 《随便一记》  评论

点击全文阅读


《汇编语言程序设计》实验报告

实验二 汇编语言顺序程序设计1. 实验目的2. 实验任务3. 实验步骤3.1 顺序结构题目设计3.2 编写代码3.3 代码分析3.4 运行测试 4. 实验总结

实验二 汇编语言顺序程序设计

1. 实验目的

掌握汇编语言程序设计的基本方法和技能熟悉并搭建汇编语言环境掌握汇编语言源程序的编辑汇编连接和执行的完整过程掌握汇编过程中各种命令的作用及使用方法

2. 实验任务

采用顺序结构设计汇编程序分析顺序结构程序的执行过程,掌握顺序结构汇编语言程序设计熟悉DEBUG常用命令的使用

3. 实验步骤

3.1 顺序结构题目设计

设x是一个8位非符号数,且5<=x<=250,求y=x^2+8*x-30,不会超过字的范围 自然数求和程序

3.2 编写代码

代码一

DATAS SEGMENT    ;此处输入数据段代码    D1 DB 0DH,0AH,'Welcome to Assembly Language Program.',0DH,0AH,'$'    D2 DB 0DH,0AH,'The program is completed.',0AH,0AH,'Welcome to use it next time.',0DH,0AH,'$'      D3 DB 10    D4 DW ?DATAS ENDSSTACKS SEGMENT    ;此处输入堆栈段代码STACKS ENDSCODES SEGMENT    ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART:    MOV AX,DATAS    MOV DS,AX    ;此处输入代码段代码    MOV DX,OFFSET D1  ;D1字符串输出    MOV AH,9    INT 21H    MOV AL,D3    ;AL<--10    MUL AL       ;AX<--10*10    MOV CX,AX    ;CX<--AX    MOV BL,D3    ;BL<--10    MOV AL,8     ;AL<--8    MUL BL       ;AX<--8*10    ADD AX,CX    ;AX<--80+100    SUB AX,30    ;AX<--100-30    MOV D4,AX    ;D4<--AX    MOV DX,OFFSET D2  ;D2字符串输出    MOV AH,9    INT 21H       MOV AH,4CH    INT 21HCODES ENDS    END START

代码二

DATAS SEGMENT    ;此处输入数据段代码     NUM DW 100    SUM DD ?DATAS ENDSSTACKS SEGMENT    ;此处输入堆栈段代码STACKS ENDSCODES SEGMENT    ASSUME CS:CODES,DS:DATAS,SS:STACKSSTART:    MOV AX,DATAS    MOV DS,AX    ;此处输入代码段代码    MOV AX,NUM    ADD AX,1    ;AX=N+1    MUL NUM     ;DX.AX=(1+N)*N    SHR DX,1    ;32位逻辑右移一位,相当于/2    RCR AX,1    ;DX.AX=DX.AX/2    MOV WORD PTR SUM,AX       MOV WORD PTR SUM+2,DX ;按小端方式保存    MOV AH,4CH    INT 21HCODES ENDS    END START

3.3 代码分析

代码一
初始值x放入AL中,使用MUL指令求x2,结果放入CX,8存入BL,利用MUL实现8*AL,结果存入AX中,ADD将AX与CX数据相加,最后SUB 30得出结果存入D4存储单元。

代码二
利用公式(1+N)N/2计算自然数求和:AX存入NUM值,+1后存入AX,使用MUL进行N操作,逻辑右移/2,最后结果以小端方式存DX.AX

3.4 运行测试

在这里插入图片描述

图表 1 代码一测试


在这里插入图片描述

图表 2 代码二运行


在这里插入图片描述

图表 3 代码二结果


4. 实验总结

成功配置并搭建起汇编语言环境成功运行了汇编语言代码测试,熟悉了汇编语言运行环境掌握了汇编语言程序设计的基本方法和技能

点击全文阅读


本文链接:http://zhangshiyu.com/post/48308.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1