汇编语言-实验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

结果(截图):
汇编语言-实验6 --loop指令简单使用以及数据段简单设置

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

运行结果(截图):
汇编语言-实验6 --loop指令简单使用以及数据段简单设置

3.大家来找茬。请翻到本文档下一页,请根据截图判断哪里出错了,再看看自己判断是否正确。你能找到错误原因的题有几道?
汇编语言-实验6 --loop指令简单使用以及数据段简单设置
Mov ax,4C00 4C00后面没有H,

汇编语言-实验6 --loop指令简单使用以及数据段简单设置
第二行CS:CODE是中文冒号
汇编语言-实验6 --loop指令简单使用以及数据段简单设置
Code ends结束
汇编语言-实验6 --loop指令简单使用以及数据段简单设置
Mov bx,1234h使用了中文的逗号

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

句子君:

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

上一篇:Event Loop


下一篇:Java线程退出