皮卡丘 发表于 2012-5-20 10:23:29

大家好 我是个新手 问题也是幼稚的 可是我不会 希望各位帮帮忙!谢谢!O(∩_∩)O哈!

{:5_109:}这是小甲鱼老师汇编教程里面的所讲的,但是我不理解 所以要问一下
                jmp 1000:3    为什么跳转的地址是 10003H   是怎么算的 ??
               我按照那个段地址×16+偏移地址    根本得不到这个结果希望帮帮忙!
               {:5_91:}问题很简单 可是我不会 呵呵

illiteracy 发表于 2012-5-20 10:29:12

你是看惯了十进制,但这里用的是十六进制,所以你不习惯了。你可以用十进制来理解:按照那个段地址×10+偏移地址
1000×10等于10000再加上偏移地址.3就是10003了

皮卡丘 发表于 2012-5-20 10:40:32

illiteracy 发表于 2012-5-20 10:29 static/image/common/back.gif
你是看惯了十进制,但这里用的是十六进制,所以你不习惯了。你可以用十进制来理解:按照那个段地址×10+偏移 ...

哦 我明白了 我以为是1000H×16原来是进位啊谢谢了{:5_109:}

橙子 发表于 2012-5-20 10:46:24

一个地址单元为10003H只是就知道了那一直地址单元就等于段地址乘以16+偏移地址    在十进制的计算器中就是等于4096乘以16+             3
                   段地址             地址偏移
在十六进制里就就会得到10003
4096为十进制    4096你用十进制转化成十六进制就就会得到1000。
不懂你看完以后清楚了没。{:5_96:}

92版差不多先生 发表于 2012-5-20 12:24:31

1000是段地址,3是偏移地址,跳转的地址=段地址*16+偏移地址。物理地址都是这样算的,应为是16进制的,所以相当于左移一位。也就是1000*16(左移一位)+3.在debug调试模式下默认是16进制的。

青山梦好 发表于 2012-5-20 14:36:16

段地址乘16+偏移地址 ,所以1000:3H 合成后的地址为10003

NGtailang 发表于 2012-5-20 14:53:53

要 温故而知新

流久动 发表于 2012-5-27 09:19:12

:'(我也要学习汇编

九墓 发表于 2012-5-27 09:45:23

橙子 发表于 2012-5-20 10:46 static/image/common/back.gif
一个地址单元为10003H只是就知道了那一直地址单元就等于段地址乘以16+偏移地址    在十进制的计算器中就是 ...

{:5_108:}好样的。

退聊人物;战孜瞳 发表于 2012-5-27 13:12:19

段地址*16+偏移量 就是物理地址了。16你就当成一个进位。
页: [1]
查看完整版本: 大家好 我是个新手 问题也是幼稚的 可是我不会 希望各位帮帮忙!谢谢!O(∩_∩)O哈!