新人求解惑!关于cs与ds的有关问题!先多谢了

新人求解惑!关于cs与ds的问题!先谢谢了!
在汇编语言中为什么既可以用cs*16+IP ,然后又有ds*16加偏移地址啊?可以讲清楚一些吗?
头都被搞晕了!而且一会用这个一会用那个的!

------解决方案--------------------
这里的16是10进制的,转换成16进制的就是10H,默认情况下是10进制。



cs*16+偏移地址=实际的物理地址,cs*16+ip=IP指向的 这条指令的物理地址
------解决方案--------------------
cs:ip指向当前执行的代码。
cs是16位的ip也是16位的,但实模式下可寻址最大1m
1m需要20位。cs不够用。所以把cs*16再加ip。16 = 2的四次方
cs*16相当于左移4位,16位的cs+4位刚好变成20位了