您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 汇编语言程序设计实验
第2章汇编语言程序设计实验2.1、实验1-1——多字节数的运算1、实验目的计科1406熟悉汇编语言的上机环境和各种工具(编辑、汇编、连接、调试);201416010608掌握完整段和简化段两种汇编程序的编写;李文俊掌握简单汇编程序的处理和调试过程。2、实验内容⑴、两个长度为3个字节(3B)的二进制无符号数,分别存放在首地址为buf1和buf2的连续内存单元中,编程求这两者之和,并将结果放在起始地址为res的内存单元中。例如,这两个数据为888888H、456789H,则其和应为[1]CDF011H。要求:用完整段和简化段两种方式实现。观察它们的反汇编结果并进行比较,单步运行程序。注意:程序运行前先将res清0,程序运行后观察res单元中的数据是否符合预期。数据存放应“高对高、低对低”。⑵、将两数改为3B的压缩BCD码,重复以上实验过程。例如,这两个数据为888888H、456789H,则其和应为[1]345677H(表示[1]345677)。注意,每两个字节相加后,应紧接着进行二-十进制调整。3、实验扩展和思考⑴、计算两个长度为3B的二进制数据之差应如何进行操作?⑵、计算两个长度为3B的压缩BCD码数据之差应如何进行操作?================================================================================实验报告================================================================================方案描述将三字节分为两部分,高16位和低16位,将其存入buf区内,高字节与高字节相加,低字节与低字节相加,之后存入res中。程序清单DATASSEGMENTbuf1dd888888hbuf2dd456789hresdd0hstringdb'liwenjun201416010608',0dh,0ah,'$';此处输入数据段代码DATASENDSSTACKSSEGMENT;此处输入堆栈段代码STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:MOVAX,DATASMOVDS,AX;此处输入代码段代码movax,wordptrbuf1addax,wordptrbuf2movwordptrres,axmovax,wordptrbuf1+2adcax,wordptrbuf2+2movwordptrres+2,axmovdx,offsetstringmovah,9int21hMOVAH,4CHINT21HCODESENDSENDSTART
本文标题:汇编语言程序设计实验
链接地址:https://www.777doc.com/doc-2280090 .html