汇编语言的 注释啊啊 ,追加的 10

datasegmentBlockdb256dup(55h)dataendscodesegmentassumecs:code,ds:datastartprocnearmov... data segment
Block db 256dup(55h)
data ends
code segment
assumecs:code, ds:data
start proc near
mov ax, data
mov ds, ax
mov bx, offset Block
mov cx,256
Again:
mov [bx], bl
inc bx
Loop Again
jmp $
code ends
end start
展开
 我来答
天骄二代
2013-05-16 · TA获得超过183个赞
知道答主
回答量:81
采纳率:0%
帮助的人:71.5万
展开全部

代码有点小问题,改动了一点点后,执行结果是将代码段中的256个值为55的数分别改为:0,1,2,3,4,……一直到255(十六进制为FF),如下:

data segment;数据段
Block db 256 dup(55h);申请首地址为block的256个字节地址空间,每个字节的值均为55h

data ends
code segment;代码段
assume cs:code, ds:data
start procnear;程序开始,将之改成“start:”
mov ax, data
mov ds, ax;这两句的意思是将数据段地址赋给ds
mov bx, offset Block;将首地址block的值赋给bx
mov cx,256;设置cx的值,即为循环次数256次
Again:  ;自定义的标号
mov [bx], bl ;将bl的值存入bx所指向的数据段中
inc bx;bx自加1,相当于C语言中的C++
Loop Again;此步是CX-1到CX=0,即循环256次后跳出循环
jmp $;跳转到当前的地址, 所以它是一个死循环,相当于在此原地踏步。如果要让它能正常结束,应该将这句改为“mov ah,4ch   int 21h”两句

code ends
end start

风格AA风俗
2013-05-15
知道答主
回答量:35
采纳率:0%
帮助的人:11.9万
展开全部
datasegment
Blockdb 256 dup(55h)申请block的256个地址空间,55h我不懂什么意思,如果是55的话就是循环重复申请五十五次这种空间
dataends
codesegment
assumecs:code, ds:data
startprocnear程序段开始
movax, data初始程序
movds, ax初始化程序断代码
movbx, offset Block把block的首地址放入bx中
mov cx,256把256存入cx计数存储器中
Again:
mov[bx], blbl的值放入bx所指向的地址空间中
incbxbx自减一。
LoopAgain重复上面的之到256次后跳出循环
jmp$结束程序标志我想是
codeends
endstart

程序含义:应该是把block低位的值全部写输出来
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式