实验要求:

求表达式x*y+z-200的值

实验步骤:

1.按照实验要求,画出相应的计算流程图

可以看到,先算x*y(保存在dx:cx),然后扩展z为双字节(dx:ax),计算x*y+z-200(保存在bx:cx),然后把结果移到w中。

2.按照基本的编辑步骤,编辑代码,并编译。

code:

DATA SEGMENT
X DW 1000
Y DW 2000
Z DW 3000
W DW 2 DUP(?)  ;定义段结束
DATA ENDS
CODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMOV AX,X   IMUL YMOV CX,AX    ;把乘积结果保存起来(低8位)MOV BX,DX    ;高8位MOV AX,ZCWD          ;位扩展,防止运算不匹配ADD CX,AXADC BX,DXSUB CX,200SUB BX,0MOV W,CX     ;把结果保存到w(低16位)MOV W+2,BX   ;高16位MOV AH,4CHINT 21HCODE ENDSEND START

每一步都有相应的注释。其中IMUL为有符号乘法,了解更多请 点击

编译并连接

3.单步调试查看结果

不停t命令,直到程序返回dos

然后查看内存,可以看到:

x:03E8,  y:07D0 ,   z:0BD8

结果w :1E8F70

4.验证结果

打开系统自带的计算机并ALT+3调到程序员专用型。

输入表达式计算结果得到2002800

转化为16进制:

ok,到此结束,运行结果正确。

知识点:

掌握cwd扩展,明白为什么要进行扩展。

掌握IMUL的用法,熟悉高位计算。

练习结构化编程。

汇编语言——第2次上机实验相关推荐

  1. 汇编语言——第1次上机实验

    准备: 硬件:pc机,32位win操作系统,能够运行dos,某些64位win10系统可能会不支持 软件:masm程序 实验内容: 1.win+r运行dos,cd到指定的masm目录(为了调试方便,所有 ...

  2. 合肥工业大学2021汇编语言程序设计上机实验一

    实验一  基本汇编程序设计 实验目的 1.熟悉在PC机上建立.汇编.连接.调试和运行8086/8088汇编语言程序的过程: 2.掌握基本汇编语言程序设计方法. 3.熟悉DOSBOX下运行dos程序方法 ...

  3. 《汇编语言》上机实验内容//理解

    [实验目标要求] <汇编语言>是计算机科学与技术专业必修的专业基础课程.汇编语言程序设计实验的目标是学习汇编语言程序设计的基本方法和技能,熟练掌握用汇编语言设计.编写.调试和运行程序的方法 ...

  4. 合肥工业大学2021汇编语言程序设计上机实验二

    实验二  高级汇编程序设计 实验目的 1. 掌握中断服务子程序的编写. 2. 汇编语言与高级语言的混编. 实验内容 1.挂接1CH中断,正计时90秒后退出.要求屏幕显示0-89的秒数. 2.VC++中 ...

  5. 《汇编语言程序设计》(双语)上机指导

    唔.省得每次忘带U盘... <汇编语言程序设计>(双语)上机指导... 1 实验1 建立windows环境下32位汇编语言开发环境... 2 实验2  Instruction Format ...

  6. 汇编8086复习——基础知识、指令汇总、上机实验踩坑

    8086处理器基础知识 汇编语言是大小写不敏感的低级语言,意思就是mov和MOV是汇编语言来说是一样的,当然大小写混用也是可以的,如Mov 在8086汇编语言里,数字默认是十进制的,如果是其他进制数字 ...

  7. 【计算机原理与接口技术(UNIX)⑰】——微型计算机系统的串行通信 [ 8250 + 具体样例 + 上机实验]

    ✅ 通过对 [计算机与UNIX汇编原理 ① ~ ⑫]的学习,我们已经大致掌握了汇编程序设计的相关知识 接下来,我将其分栏名改为 [计算机原理与接口技术(UNIX) ],重点将放在 "计算机原 ...

  8. 计算机实验报告要求,计算机上机实验内容及实验报告要求

    一.<软件技术基础>上机实验内容 1.顺序表的建立.插入.删除. 2.带头结点的单链表的建立(用尾插法).插入.删除. 二.提交到个人10m硬盘空间的内容及截止时间 1.分别建立二个文件夹 ...

  9. 微型计算机排除语法错误,南京邮电大学《微机原理与接口技术》上机实验参考答案(四次全)...

    南京邮电大学<微型计算机原理与接口技术>上机实验答案.包含全部四次试验内容,涵盖汇编语言源程序和硬件连接指导等. 第 一次 实验1.3.1 "排除语法错误" 实验3.1 ...

最新文章

  1. centos下pg_dump的服务器版本不匹配问题
  2. ASP.NET Core 2.0 使用支付宝PC网站支付
  3. 根据redis自增生成全局唯一订单id
  4. nrf51822-配对绑定实现过程
  5. Windows Terminal 新手入门
  6. 【kafka】支持超高并发的kafka网络设计
  7. Matlab常用函数:mode(X)
  8. JSON.toJSONString()空字段不忽略
  9. Android网络请求通信之Volley
  10. 第一行代码--笔记(3)
  11. Egret入门学习日记 --- 第十四篇(书中 5.4~5.6节 内容)
  12. 散粉在哪个步骤用_无限回购的散粉
  13. java 多线程局域网快速传输文件,java大文件复制最高效方法多线程FileChannel
  14. 《个人信息安全规范》会让我们的信息更安全吗?
  15. 指付通盗刷信用卡维权连载--9月3日维权纪实
  16. Feb14 小白《Linux就该这么学》学习笔记1
  17. Linux系统下如何显示隐藏文件
  18. python抓取网站访客手机号_网站获取访客QQ系统
  19. 计算机应用情话,情话大全浪漫情话 最美的情话莫过于我也爱你
  20. 也来谈谈人工智能的罪与罚

热门文章

  1. 检测和删除多余无用的css
  2. 信息系统开发平台OpenExpressApp - 应用模型ApplicationModel
  3. 小程序 封装table组件
  4. 51Nod.1766.树上最远点对(树的直径 RMQ 线段树/ST表)
  5. 以A表中的值快速更新B表中记录的方法
  6. NoSQL入门第一天——NoSQL入门与基本概述
  7. 阻塞/非阻塞/同步/异步方法和多线程的关系?没有任何关系,俩不挨着
  8. 设计模式学习笔记-基础知识篇
  9. 排序算法复习—希尔排序
  10. 泛型(CSDN转载)