回 帖 发 新 帖 刷新版面

主题:王爽汇编课后练习的问题

实验10.2,解决除法溢出
公式:X/N=int(H/N)*65536+[rem(H/N)*65536+L]/N      
    int()取商,rem()取余数
    X:被除数,N:除数,用cx保存
    H:被除数的高16位,用dx保存
    L:被除数的低16位,用ax保存

65536是32位数了,书上只讲到16位数的乘法,32位数怎么乘啊?如果分成两个16位数做两次乘法,那么第一次乘了后也会产生32位数,怎么再乘第二次呢?

回复列表 (共1个回复)

沙发

王爽老师的汇编语言学习论坛(http://www.asmedu.net)
    人们经常认为汇编语言的应用范围很小,而忽视它的重要性。其实汇编语言对每一个希望学习计算机科学与技术的人来说都是非常重要的,是不能不学习的语言。 
   所有可编程计算机都向人们提供机器指令,通过机器指令人们能够使用机器的逻辑功能。
   所有程序,不论用何种语言编制,都必须转成机器指令,运用机器的逻辑功能,其功能才能得以实现。机器的逻辑功能,软件系统功能构筑其上,硬件系统功能运行于下。 
   汇编语言直接描述机器指令,比机器指令容易记忆和理解。通过学习和使用汇编语言,能够感知、体会、理解机器的逻辑功能,向上为理解各种软件系统的原理,打下技术理论基础;向下为掌握硬件系统的原理,打下实践应用基础。 
   学习汇编语言,向上可以理解软件,向下能够感知硬件,是我们理解整个计算机系统的最佳起点和最有效途径。
                   ----摘自 汇编语言学习论坛(http://www.asmedu.net)

我来回复

您尚未登录,请登录后再回复。点此登录或注册