- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理与接口技术debug程序调试
例4.1:
该程序是将十六进制数8H通过查表的方式转换为ASCII码38H。通过反汇编后可知8H存放在偏移地址为0010H中,转换后的数据38H存放在偏移地址为0011H中。调试结果如下,证明程序是正确的。
例4.2:
该程序是相乘得到14B66DC1DF4D840。通过反汇编得到被乘数与乘数分别存放于偏移地址为0000H和0004H起始处,结果存放于偏移地址为0008H起始处。调试结果如下,证明程序是正确的。
例4.3:
该程序是将是对X=90和Y=57进行比较得到XY,所以Z=1。通过反汇编得到X与Y分别存放于偏移地址为0000H和0001H处,结果Z存放于偏移地址为0002H处。调试结果如下,证明程序是正确的。
例4.4:
该程序是利用SF位来判断补码数Z=7938H是否为正数,求其绝对值。而7938H=0111 1001 0011 1000B,它是一个正数。通过反汇编得到Z存放于偏移地址为0000H处,结果送回原处依旧是7938H。调试结果如下,证明程序是正确的。
例4.5:
该程序是是将NUM1=062389AB78E390AFH和NUM2=7F367D82A9027C8BH两个8字节的无符号数相加得855A072E21E60D3A。通过反汇编得到NUM1与NUM2分别存放于偏移地址为0000H和0008H起始处,结果SUM存放于偏移地址为0010H起始处。调试结果如下,证明程序是正确的。
例4.6:
该程序是将字节变量BYTE_DATA=8FH这个数用8位二进制数显示。通过反汇编得到BYTE_DATA存放于偏移地址为0000H起始处,结果BUF存放于偏移地址为0001H起始处,计算机的所存储的是相对应的ASCII码,并且显示器显示调试结果如下,证明程序是正确的。
例4.7:
该程序是将长度小于等于100个由键盘输入的字符串的每一个的符号ASCII码值+2。通过反汇编得到我输入的字符串‘ABCD1234’存放于偏移地址为0002H起始处,之后加一个回车(ASCII码为0D),符串长度限制为64H存放于偏移地址为0000H处,实际输入长度08H存放于偏移地址为0001H处。结果存放于偏移地址为0066H起始处,并且字符串的结尾加上‘$’(ASCII码为24)。调试结果如下,证明程序是正确的。
例4.8:
该程序是将从1开始到整数N求和,要求和不大于10000,并保存N。用C语言编程的该数为142。通过反汇编得到结果NUM=8EH存放于偏移地址为0000H处。调试结果如下,证明程序是正确的。
例4.9:
该程序是将89,34,23,47,2,93,13,26,3,90这10个数按从小到大排列。通过反汇编得到这10个数存放于偏移地址为0000H起始处,结果送回原处。调试结果如下,证明程序是正确的。
例4.10:
该程序是统计字符串‘ASDFJKL’对应的ASCII码串中的二进制1的个数。通过反汇编得到‘ASDFJKL’存放于偏移地址为0000H起始处,CX=55表示字符总个数为56,结果NUM=21存放于偏移地址为0007H处。调试结果如下,证明程序是正确的。
例4.11:
该程序是将从键盘输入的十进制数(-32768—+32767)转化为二进制数。通过反汇编得到我输入的‘1234’存放于偏移地址为0002H起始处,之后加一个回车(ASCII码为0D),字符串长度限制为07H存放于偏移地址为0000H处,实际输入长度04H存放于偏移地址为0001H处,结果BINARY=4D2H存放于偏移地址为0009H起始处。调试结果如下,证明程序是正确的。
例4.12:
该程序是将ASCSTRING=‘1’,‘A’,‘6’,‘E’这四位十六进制ASCII码转换为二进制数。通过反汇编得到ASCSTRING存放于偏移地址为0000H起始处,结果放于偏移地址为0004H起始处。调试结果如下,证明程序是正确的。
例4.13:
该程序是将一个16位二进制带符号数以十进制形式输出到显示器显示。调试结果如下,结果显示Divide overflow(除法溢出)。
例4.14:
程序开始编译时出错了,经查错是LP_MUL标号后面少写了“:”。
该程序是分别对三组信息表的各自前两个数相乘(46,4和78,9和25,6),相乘结果放到第三单元中,之后乘积累加放到RESULT里。通过反汇编得到LIST1存放于偏移地址为0000H起始处,其中乘积DBH存放于偏移地址为0002H处,LIST2存放于偏移地址为0004H起始处,其中乘积2BEH存放于偏移地址为0006H起始处,LIST3存放于偏移地址为0008H处,其中
文档评论(0)