汇编语言-实验6 --loop指令简单使用以及数据段简单设置

一、实验要求

  • 1.你的程序不要截图,直接粘贴。
  • 2.用蓝色或者绿色字体作答。

二、实验技巧

  • 1.程序运行没有输出,怎么查看运行结果?(debug所生成的可执行文件,执行后,查看结果
  • 2.dos下打字很慢怎么办?(可以使用shift+向上或者向下,查看已经输入过的指令
  • 3.编译出错怎么办?(仔细查看出错提示信息,找到对应行检查。asm文档在打开的状态,可以对其在dos下编译
  • 4.请独立完成作业。(可偷看别人的程序,但不能复制粘贴

三、实验内容

  • 1:编写程序,计算1+3+5…+99,结果存放在内存中。

思考:debug生成的可执行文件,找到数据段和代码段。数据段的起止地址是?代码段的起止地址是?你设置的数据段有多大,实际能用的数据段有多大?

数据段的起止地址是076A:0000 003F
代码段的起止地址是076B:0000 001D
设置的数据段076A:0000 003F
实际能用的数据段有076A:0000 007

源程序(不要截图):

Data segment
    sto DW  1000h
 Data ends
 assume  cs:code , ds:data

code segment   
         assume  cs:code,ds:data
start:
         mov  ax , data
         mov  ds , ax

         mov ax,0
         mov bx,0 
         mov cx,50
         mov dx,1

  s:     add ax,dx
         add dx,2
         add bx,ax 
         loop s

         mov   sto,ax

         mov ax,4c00h
         int 21h
code ends
end start

结果(截图):
在这里插入图片描述

2:编写程序,设置足够大的数据段,初始状态每个字节数值全7。使用汇编指令将字母表ABCD….Z存储在数据段中。将数据段中存储的26个字符全部输出。

思考:debug生成的可执行文件,找到数据段和代码段。数据段的起止地址是?代码段的起止地址是?你设置的数据段有多大,实际能用的数据段有多大?

数据段的起止地址是076A:0000 003D
代码段的起止地址是076C:0000 001D
设置的数据段076A:0000 003D
实际能用的数据段有076A:0000 001A

源程序(不要截图):

Data segment
    da DB  32 DUP(7)
 Data ends
 assume  cs:code , ds:data

code segment   
start:
         mov  ax , data
         mov  ds , ax
         mov  ax , 41h
         mov  bx , 0
         mov cx,26
         mov bx,offset data

  s:     mov [bx],ax
         add al,1
         add bx,1 
  loop s

         mov ax,4c00h
         int 21h
code ends
end start

运行结果(截图):
在这里插入图片描述

3.大家来找茬。请翻到本文档下一页,请根据截图判断哪里出错了,再看看自己判断是否正确。你能找到错误原因的题有几道?
在这里插入图片描述
Mov ax,4C00 4C00后面没有H,

在这里插入图片描述
第二行CS:CODE是中文冒号
在这里插入图片描述
Code ends结束
在这里插入图片描述
Mov bx,1234h使用了中文的逗号

【这么炎热的夏天,就应该吃冰的!甜筒甜筒~好吃好吃,奶茶奶茶,好喝好喝,突然想吃饭了,好像饿了诶。嘿嘿,吃饭去啦!L(‘ω’)┘三└(‘ω’)」】

句子君:

马云在汪涵生日时发给汪涵一条短信,马云说:汪涵,男人的最佳年龄是40到50岁之间的十年,要做想做和可以做的事很多,30岁之前做别人要你做的事,30岁后稀里糊涂学着自己做事,40岁必须知道自己最强最喜欢做的事,50岁的时候,要考虑为年轻人做一点事。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

少年游四方

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值