汇编语言中解决除法溢出的问题
2022/3/2 14:16:16
本文主要是介绍汇编语言中解决除法溢出的问题,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
所谓的除法溢出超过寄存器的存储范围.例如对于div bx,此时寄存器是16位,算出来的商超过了16位,AX(保存商的寄存器)无法保存超过16位的数据。
解决方法:例如803/7为例,先拿8/7等于商为1,余数为1,接着余数1乘以10加上0/7为商为1,余数为3,接着再拿余数3乘以10加上3为33/7商为4余数5,那么最后的结果就位商为114,且余数为5
assume cs:code,ss:stack stack segment stack db 256 dup (0) stack ends code segment start: mov ax,0FFFFh mov dx,0ffffh mov bx,4h push ax mov ax,dx xor dx,dx;dx清0, xor dx,dx 比mov dx,0快 div bx mov cx,ax pop ax div bx mov ax,4c00h int 21h code ends end start
这篇关于汇编语言中解决除法溢出的问题的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-01为什么公共事业机构会偏爱 TiDB :TiDB 数据库在某省妇幼健康管理系统的应用
- 2024-04-26敏捷开发:想要快速交付就必须舍弃产品质量?
- 2024-04-26静态代码分析的这些好处,我竟然都不知道?
- 2024-04-26你在测试金字塔的哪一层?(下)
- 2024-04-26快刀斩乱麻,DevOps让代码评审也自动起来
- 2024-04-262024年最好用的10款ER图神器!
- 2024-04-2203-为啥大模型LLM还没能完全替代你?
- 2024-04-2101-大语言模型发展
- 2024-04-17基于SpringWeb MultipartFile文件上传、下载功能
- 2024-04-14个人开发者,Spring Boot 项目如何部署