实验报告Word文档格式.docx

上传人:b****6 文档编号:21112233 上传时间:2023-01-27 格式:DOCX 页数:22 大小:459.28KB
下载 相关 举报
实验报告Word文档格式.docx_第1页
第1页 / 共22页
实验报告Word文档格式.docx_第2页
第2页 / 共22页
实验报告Word文档格式.docx_第3页
第3页 / 共22页
实验报告Word文档格式.docx_第4页
第4页 / 共22页
实验报告Word文档格式.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

实验报告Word文档格式.docx

《实验报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《实验报告Word文档格式.docx(22页珍藏版)》请在冰豆网上搜索。

实验报告Word文档格式.docx

movax,data

movds,ax

movah,0ah;

读取加数与被加数

movdx,offsetdata1

int21h

movah,2

movdl,0dh

movdl,0ah

movah,0ah

movdx,offsetdata2

movsi,offsetdata1

movax,[si+1]

andax,00ffh

movbx,ax

movbyteptr[bx+si+2],'

0'

;

将未用到的数字位置0

movdi,offsetdata2

movbx,[di+1]

andbx,00ffh

movbyteptr[bx+di+2],'

movcx,2

pushax

divcl

cmpal,0

jzre

movcx,ax

popax;

将低位放在存储器的低地址,高位放高地址

ch1:

pushsi

pushbx

movbx,cx

movdl,[bx+si+1]

subbx,cx

movdh,[bx+si+2]

mov[bx+si+2],dl

popbx

mov[bx+si+1],dh

popsi

loopch1

re:

movax,bx

jzren

popax

ch2:

pushdi;

movdl,[bx+di+1]

movdh,[bx+di+2]

mov[bx+di+2],dl

mov[bx+di+1],dh

loopch2

ren:

movcx,5;

进行5位数的加法

pushcx

Mlen:

movbx,1

movah,0

sahf

cal:

moval,[si+1+bx];

逐位进行加法运算

pushf

subal,30h

movah,[di+1+bx]

subah,30h

popf

adcal,ah

aaa

mov[si+1+bx],al

cmpah,0

jzcarry;

大于10则C标志位置1

stc

carry:

incbx

loopcal

popcx

jncex1

jcot1

ex1:

cmpbyteptr[bx+si+1],0;

没进位则除去高位的0

loopzex1

inccx

jmpot

ot1:

movdl,'

1'

;

最高位有进位则输出一个1

ot:

movbx,cx;

将得数按位输出

movdl,[si+1+bx]

ordl,30h

loopot

movah,4ch

codeends

endbegin

程序运行结果:

实验2:

—BCD码相乘:

实现BCD码的乘法,要求被乘数和乘数(0~99)以压缩BCD码形式存放,各占1个字节内存单元。

乘积存放在另外2个字节内存单元中。

data1db3;

被乘数

db?

db3dup(30h)

data2db3;

乘数

db3dup(30h)

stacksegmentstack

code,ds:

data,ss:

stack

movbx,dx

movcl,[bx+1];

CL中存放数的位数

cmpcl,1

jnzmul2;

如果为1位数则高位添0

moval,[bx+2]

movbyteptr[bx+2],30h

mov[bx+3],al

mul2:

movah,0ah

jnzdeal;

movbyteptr[bx+2],30h

mov[bx+3],al

deal:

movah,2;

回车换行处理

movcl,4

moval,[si+3]

movbl,[di+3]

subbl,30h

mulbl;

逐位相乘

aam;

处理为非压缩BCD码

shlal,cl

shrax,cl;

变为压缩BCD码

movdx,ax;

结果放在DX中

moval,[si+2]

mulbl

aam

shlal,cl

addal,dl;

与前一次运算结果相加并处理为压缩BCD码

daa

movdl,al

adcdh,ah

moval,dh

daa

movdh,al

movbl,[di+2]

addal,dl

shlax,cl

adddh,ah

movch,0;

CH=0则未开始输出数字

movcl,4

movax,dx;

开始逐位输出结果

andah,0f0h

shrah,cl

movdl,ah;

将每一位数放在DL

cmpdl,0;

若为0则不输出

jztwo

incch

two:

andah,0fh

movdl,ah

pushdx

adddl,ch

cmpdl,0

popdx

jzthree;

如果未开始输出且为0则不输出

incch

three:

andal,0f0h

shrdl,cl

jzfour;

four:

andal,0fh

int21h

endbegin

实验3:

—字符匹配程序:

从键盘上输入一个字符串,回车结束并回显。

用串操作指令设计程序,实现在输入的字符串存储区中寻找空格字符,退出时给出是否找到的信息,并给出具体位置。

data1db'

findit!

'

0dh,0ah,'

$'

发现

data2db'

nooooot!

没发现

inputdb30;

输入的字符串

db30dup(?

extrasegment

targetdb30dup(?

);

在附加段中的输入的字符串

extraends

data,es:

extra,ss:

movax,extra

moves,ax

movah,0ah

movdx,offsetinput

movbx,offsetinput

movsi,[bx+1]

andsi,00ffh

movbyteptr[bx+si+2],0dh

incsi

movbyteptr[bx+si+2],0ah

输入字符串,并加上换行回车

int21h;

屏幕上回车换行

movcx,si

movdi,0

loo1:

movdl,[bx+di+2]

incdi

looploo1;

输出字符串

movdi,offsettarget

movsi,offsetinput

addsi,2

movcx,[bx+1]

andcx,00ffh

addcx,3

repmovsb;

字符串转移至附加段

moval,20h

movbx,di

movsi,0;

辅助判断是否需要输出对应信息

loo3:

repnescasb;

找空格

jcxzloo2

cmpsi,0

jzfind

con:

pushdi

subdi,bx

movdx,di

calldealnum

movdl,20h

popdi

jmploo3

final:

movah,8;

程序结束

loo2:

cmpsi,0;

输出没找到

jnzfinal

movah,9

jmpfinal

find:

movdx,offsetdata1;

输出找到

jmpcon

dealnumproc;

处理输出数字的过程

anddx,00ffh

movax,dx

movbx,10

divbl

ret

dealnumendp

实验4:

—冒泡法排序:

在自BLOCK开始的存储区内有10个以压缩BCD码存放的无符号数(0~99),试用冒泡法排序,并将排序结果输出显示。

datasegment

blockdb12h,21h,10h,09h,56h,43h,78h,99h,00h,66h

db200dup(?

codesegment

movbx,offsetblock

movcx,10

movsi,0

loo4:

andax,0;

输出排序前内存中的数列

moval,[bx+si]

shral,cl

adddl,30h

movah,02h

looploo4

movbx,offsetblock

pushcx;

二重循环进行冒泡排序

deccx

movah,byteptr[bx+si+1]

cmpal,ah;

比较前后两个数

jnanchg;

大于则交换

mov[bx+si],ah

mov[bx+si+1],al

nchg:

cmpcx,0

jzstr

looploo2

str:

looploo1

输出排序后的数列

looploo3

movah,01h

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1