dw与db之间的区别!

xiayiguo 2012-08-16 05:34:19
dw是定义字型数据的,db是定义字节型数据的,
dw中定义的数据不足8个时候,也当做8个来算,解释是怕来回找麻烦,那为什么db定义的时候,几个就是几个啊!为什么不取整了?
刚学,也写术语不怎么会说,大体就是这个意思,求解释!
...全文
1425 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
saishow 2012-08-18
  • 打赏
  • 举报
回复
dd是两个dw,dw是两个db,而db是八个1,一个F, 这样好理解吧。
gsy999 2012-08-18
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
引用 2 楼 的回复:

引用楼主 的回复:
dw是定义字型数据的,db是定义字节型数据的,
dw中定义的数据不足8个时候,也当做8个来算,解释是怕来回找麻烦,那为什么db定义的时候,几个就是几个啊!为什么不取整了?
刚学,也写术语不怎么会说,大体就是这个意思,求解释!

你把房子的大小和住在房子里的人数弄混了.
DB : 房子可以住八个人
DW : 房子可以住十六个人
如果有……
[/Quote]
(1)你在data段实际上定义了5个dw变量,应该是10个字节;
(2)在masm语言中,取code段地址有专门的语句,你不用具体去算它,那样反而会出错;
(3)在数据段定义的数据,如果变量都是字节对齐的,那么数据在内存中是连续存放的。

不懂你“如果是这样,那为什么会出先这种情况啊?“这句话的意思。
ghost_god_like 2012-08-17
  • 打赏
  • 举报
回复
樓主,我還沒看懂你想要表達的是什么意思
ghost_god_like 2012-08-17
  • 打赏
  • 举报
回复
data的段地址是X,那么code的段地址是X+2?
請說出依據~~~~
xiayiguo 2012-08-17
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

data的段地址是X,那么code的段地址是X+2?
請說出依據~~~~
[/Quote]
我的是王爽的汇编语言,书后有一道习题就是这样的!
因为定义两组dw,每组都占16个字节!
xiayiguo 2012-08-16
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

引用楼主 的回复:
dw是定义字型数据的,db是定义字节型数据的,
dw中定义的数据不足8个时候,也当做8个来算,解释是怕来回找麻烦,那为什么db定义的时候,几个就是几个啊!为什么不取整了?
刚学,也写术语不怎么会说,大体就是这个意思,求解释!

你把房子的大小和住在房子里的人数弄混了.
DB : 房子可以住八个人
DW : 房子可以住十六个人
如果有6个人,可以住在DB的房子……
[/Quote]
我的意思是这样的,比如定义:
data segment
dw:0,1111h ,2222h,
dw:0,0,
code segment
blabla...
那当CPU开始执行,data的段地址是X的话,那code的段地址就是X+2吧!
---------------
然后用db定义
data segment
db:'assmble'
db:'language'
blabla...
data中的数据在内存中显示是连续的吧!
如果是这样,那为什么会出先这种情况啊?
如果不是的话,谢谢指点
gsy999 2012-08-16
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
dw是定义字型数据的,db是定义字节型数据的,
dw中定义的数据不足8个时候,也当做8个来算,解释是怕来回找麻烦,那为什么db定义的时候,几个就是几个啊!为什么不取整了?
刚学,也写术语不怎么会说,大体就是这个意思,求解释!
[/Quote]
你把房子的大小和住在房子里的人数弄混了.
DB : 房子可以住八个人
DW : 房子可以住十六个人
如果有6个人,可以住在DB的房子里,也可以住在DW的房子里
如果有12个人,那只能住在DW的房子里.
ad6673706 2012-08-16
  • 打赏
  • 举报
回复
能不能说清楚点

21,497

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧