源数据串和目的数据串的问题

jinandsun 2003-05-05 07:04:17
原数据串可以使用的段寄存器是DS,CS,ES,SS,偏移SI
目的数据串可以使用的段寄存器ES,偏移DI
我在看杨季文 老师的《汇编语言程序设计教程》的时候上面的定义我不太明白
杨老师还有个代码
1.MOV [SI],AX
这里为什么SI可以作为目的呢?SI不是作为源数据串的吗?为什么可以这样呢?
2.还有在这页里还有个问题。(25页最上面的2个语句)
MOV [BP],CX ;引用段寄存器BP
??
怎么BP成段寄存器了呢?
希望朋友们帮助解答
...全文
87 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zara 2003-05-06
  • 打赏
  • 举报
回复
1. 那些源数据串和目的数据串的寄存器的使用规定指的只是在串操作指令中的规定, 不是普通的指令. 所谓的串操作指令是指诸如: movsb/movsw, scasb/scasw, cmpsb/cmpsw之类的.
象 mov [si], ax 这样的指令不是串操作指令, 也就不再遵循那些规定, 而是普通的寻址的规定:
si 只是作为一个普通的寄存器, 相应的段址为DS; mov [di], ax 也类似, 其缺省段址为DS, 而不是串操作指令规定中的ES.

2. MOV [BP],CX ;引用段寄存器BP ; 这个应该是书上印错了, 应该是 "引用段寄存器SS"
jinandsun 2003-05-06
  • 打赏
  • 举报
回复
朋友们帮忙啊
jinandsun 2003-05-05
  • 打赏
  • 举报
回复
朋友们帮忙啊
jinandsun 2003-05-05
  • 打赏
  • 举报
回复
?
用户 昵称 2003-05-05
  • 打赏
  • 举报
回复
1)如果源地址和目的地址都在一个段,怎么用都行

21,458

社区成员

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

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