摘要:
最近学习《汇编程序》王爽的汇编程序,经过一番努力终于实现了第一个课程设计,立文为证,随便代码写的比较烂,不过总算是实现了功能。 一、实验要求 在屏幕输出实验七中的数据 二、设计思路 1、将实验七的程序编写成一个子过程finishing,在主程序中调用,可以获得实验七种指定格式的table段数据,设置es:bx指向table段中第一行 2、创建一个数据缓存区buffer,设置ds:si指向... 阅读全文
摘要:
一、实验要求 编写一个子程序,实现将一个数值转换为表示十进制数的字符串 二、程序接口 名称:dtoc 功能:将word型数据转变为十进制数的字符串,字符串以0为结尾符 参数:(ax) = word型数据 ds:si指向字符串的首地址 返回:无 三、算法概述 1、可以反复调用除法运算除以10d取余数,直到商为0,可以获得十进制各位码 例如: ... 阅读全文
摘要:
汇编语言中div运算如果被除数为32位,除数则为16位,被除数放在DX和AX中,商放在AX中,余数放在DX中。如果被除数为16位,除数则为8位,被除数放在AX中,商放在ah,余数放在al。但会产生一个问题,那就是当除出来的商大于AX或者AH的时候,就会产生除法溢出的错误。例如1000/1,被除数可以放在16位的AX中,1可以放在8位的寄存器中,得到的商为1000,超过了AH能容纳的最大值,因此会造成除法溢出的问题。王爽的书中提供一个公式,可以避免除法溢出的问题子程序要求名称:divdw 功能:进行不会产生溢出的除法运算,被除数为dword型,除数为word型,结果为dword型 参数:(... 阅读全文