鱼C论坛

 找回密码
 立即注册
12
返回列表 发新帖
楼主: 899599

[已解决]关于寄存器的赋值问题,求大神帮帮忙

[复制链接]
 楼主| 发表于 2019-3-13 23:44:03 | 显示全部楼层
人造人 发表于 2019-3-13 23:36
我大概明白了,我需要研究研究

多谢大神啊,十分感谢了,记得上一年10月也是你帮我,那次其实是vs2017的锅,要创建空项目,那样就能在命令行中实现鼠标点击选择光标位置了。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-3-13 23:44:38 | 显示全部楼层    本楼为最佳答案   
好了

  1.         .model small
  2.         .stack
  3.         ;这是显示数据中出现多少个1的程序
  4.                         .data
  5. number          dw 0000111100001111B   ;出现问题的地方
  6. db 1, 2, 3, 4, 5, 0ffh
  7. db 11h, 12h, 13h, 14h, 15h, 0ffh
  8.         .code
  9. start:

  10. mov        ax, @data
  11. mov        ds, ax
  12. mov        bx, number
  13.           ;mov bx,0000111100001111B  ;本来是想写成 mov bx,offset number
  14.         xor dx,dx    ;清零dx
  15. again:          cmp bx,0     ;比较是不是0
  16.         jz done                 ;是0就退出循环
  17.         shl bx,1     ;左移1
  18.         adc dl,0     ;加上CF
  19.         jmp again
  20. done:           cmp dl,10    ;比较是不是10
  21.         jb digit         ;不是就加'0'之后显示
  22.         push dx   ;显示'1'
  23.         mov dl,'1'        
  24.         mov ah,2
  25.         int 21h
  26.         pop dx
  27.         sub dl,10
  28. digit:          add dl,'0'
  29.         mov ah,2
  30.         int 21h
  31.         mov ah,4ch
  32.         int 21h
  33.         end start
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-3-13 23:51:03 | 显示全部楼层
本帖最后由 899599 于 2019-3-13 23:52 编辑


成功了,是因为ds没有选中data段吗
顿时明白了,看了看之前的helloworld的例子
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-3-13 23:51:18 | 显示全部楼层
899599 发表于 2019-3-13 23:51
成功了,是因为ds没有选中data段吗

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-3-13 23:53:18 | 显示全部楼层

db 1, 2, 3, 4, 5, 0ffh
db 11h, 12h, 13h, 14h, 15h, 0ffh
这段的作用是?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-3-13 23:55:19 | 显示全部楼层
899599 发表于 2019-3-13 23:53
db 1, 2, 3, 4, 5, 0ffh
db 11h, 12h, 13h, 14h, 15h, 0ffh
这段的作用是?

用来debug的特殊数据,现在已经没用了
^_^
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-3-13 23:57:57 | 显示全部楼层
人造人 发表于 2019-3-13 23:55
用来debug的特殊数据,现在已经没用了
^_^

真的是太感谢了,我看了两个夜晚了,(书本的源码也是有点错误啊)小细节没注意到,感谢大半夜帮我
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-10 03:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表