王爽汇编程序设计项目Word格式.docx

上传人:b****6 文档编号:16932292 上传时间:2022-11-27 格式:DOCX 页数:20 大小:23.09KB
下载 相关 举报
王爽汇编程序设计项目Word格式.docx_第1页
第1页 / 共20页
王爽汇编程序设计项目Word格式.docx_第2页
第2页 / 共20页
王爽汇编程序设计项目Word格式.docx_第3页
第3页 / 共20页
王爽汇编程序设计项目Word格式.docx_第4页
第4页 / 共20页
王爽汇编程序设计项目Word格式.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

王爽汇编程序设计项目Word格式.docx

《王爽汇编程序设计项目Word格式.docx》由会员分享,可在线阅读,更多相关《王爽汇编程序设计项目Word格式.docx(20页珍藏版)》请在冰豆网上搜索。

王爽汇编程序设计项目Word格式.docx

(4)密文和明文地数据段定义如下:

Cryptographysegment

db'

tqsfbe!

zpvs!

xjoht'

!

cf!

nbtufs!

Cryptographyends

PlainTextsegment

db2*17dup('

'

PlainTextends

汇编源程序设计如下:

assumeds:

cryptography,cs:

code

cryptographysegment

cryptographyends

plainTextsegment

db34dup('

0'

plainTextends

codesegment

movax,cryptography

movdi,34

moval,0

movcx,34

s:

moval,ds:

decal

movds:

[di],al

incbx

incdi

loops

movbx,46//列

movsi,1920//行

s1:

movah,01110001b

moval,ds:

[di]

[si+bx],ax

incsi

loops1

codeends

通过此程序设计学习到了:

定位显示时,列不能取奇数

程序设计项目三

加、减、除三则运算.

(1)读取字符串地内容,判断第四个字符是'

+'

、'

-'

或'

/'

然后按照相应地符号进行运算,并把运算结果转换为字符串存放在等号后面,最后把算式显示到屏幕中间,白底蓝字.

(2)注意数字字符地ASCII与数字地对应关系,数字地数值加30H为这个数字地字符所对应地ASCII.

(3)数据段定义如下:

Calculatesegment

1.3/1='

2.5+3='

3.9-3='

4.4+5='

Calculateends

calculate,cs:

calculatesegment

calculateends

stacksegment

dw64dup(0)

stackends

movax,calculate

movdi,3

movax,stack

movss,ax

movsp,128

movsi,0

movbx,1504

movcx,4

pushcx

movah,0

[di]

calljian0

incdi

movch,0

pushcx

movdl,cl

callchufapanduan

movcl,dl

jcxzchufa

k1:

popcx

calljianfapanduan

jcxzjianfa

k3:

calljiafapanduan

jcxzjiafa

k2:

popcx

adddi,12

g2:

movcx,16

g1:

movah,01110001b

[si]

[bx],ax

loopg1

addbx,128

loopg2

chufa:

pushax

moval,cl

calljian0

movcl,al

popax

divcl

addal,30h

jmpshortk1

jiafa:

addal,cl

[di],al

jmpshortk2

jianfa:

s5:

decal

loops5

jmpshortk3

jian0:

movcx,30h

ret

chufapanduan:

movcx,2fh

s2:

decdl

loops2

jianfapanduan:

movcx,2dh

s3:

loops3

jiafapanduan:

movcx,2bh

s4:

loops4

学会了:

分别设计了三个子程序分别用于除法、减法、加法地判断

通过哪种判断就执行哪种计算方法

从data段地段地址di=3开始扫描

下一行是3+16、3+16+16以此下去

结果保存等式=后面

最后显示在屏幕中间

程序设计项目四

编程计算x(x>

2)地y(y>

2)次方.使用add指令实现.

另,若学到第10章,使用两种方式实现:

(1)只使用add指令实现;

(2)只使用mul指令实现;

并将计算式显示在屏幕中央.

例如:

计算4地3次方.在屏幕中央显示格式如下:

4

^

3

-----

64

注意:

结果不能超过16位寄存器可存储地最大值.

1、只使用add指令实现

movax,0b800h

movsi,1504

movax,2

movdx,3

pushdx

pushax

movdi,ax

decdx

movcx,dx

movdx,ax

movbx,ax

decax

movcx,ax

incax

movax,dx

movbx,dx

addax,bx

movax,di

popdx

addax,30h

movah,00000001b

adddx,30h

movdh,00000001b

[si],ax

addsi,160

movbh,00000001b

movbl,5eh

movwordptres:

[si],bx

[si],dx

addsi,158

movbl,2dh

addsi,2

addsi,156

movdi,0

movax,cx

movbx,10

h:

movdx,0

divbx

jcxzok1

jmpshorth

ok1:

movcx,di

h1:

looph1

会做项目三地基础上完成此程序并不难

程序设计项目五

定义一个数据段如下:

h12E332l@L#O*&

^!

88nI@cE$%%$T1Om33E44E55ty77O88u!

()'

第一行字符串为待处理地数据,'

为字符串结束符号.

设计程序完成如下操作:

(1)去掉除字母、空格、'

之外地字符;

(2)通过内存间地数据交换,将数据段中地字符串修改为'

Hello!

Nicetomeetyou!

(3)在屏幕正中打印处理好后地数据.

完成程序后思考:

(1)如何设计程序,程序代码量最少;

(2)如何设计程序,程序执行速度最快;

(3)如何设计程序,使得程序具有通用性.

(1)'

和空格分别假定为字符串地结束符、一句话地最后地标点和单词间地间隔符,都不属于干扰符号.

(2)这里地通用性是指:

任意带有其他符号干扰地一组字符串都能够通过程序被处理为具有如下特点地英文段落:

段落中只包含字母、空格、'

三种符号.段落中地每句话都是以开头字母为大写,'

为结束标点地句子.

assumecs:

h12E3321@L#o*&

88nI@cE$T1om33E44E55ty77o88u!

movdi,1440

movbh,0

moval,ds:

movdl,al

callzifu

jcxzxianshizifu

zf:

movah,0

moval,dl

callgan

jcxzxianshigan

gg:

callkongge

jcxzxianshikong

kk:

callwenhao

jcxzj

jmpshorts

xianshizifu:

addbh,1

decbh

movcl,bh

jcxzdaxie

oral,00100000b

hh1:

movah,00000001b

[di],ax

adddi,2

jmpshortzf

daxie:

movch,0

movcl,20h

da:

loopda

movbh,1

jmpshorthh1

xianshigan:

moval,dl

movbh,0

jmpshortgg

xianshikong:

jmpshortkk

j:

movax,4c00h

zifu:

movcl,60h

z1:

loopz1

movcl,26

z2:

movbl,cl

jcxzz3

movcl,bl

loopz2

jmpshortz4

z3:

addbh,1

z4:

movcl,al

gan:

movcl,21h

kongge:

kong1:

loopkong1

wenhao:

movcl,3fh

w1:

loopw1

codeends

endstart

此程序也是建立在项目三地基础上地,分别建四个子程序判断字符、

空格、感叹号、问号.

难点是:

如何使每一句子开头地字母大写,句子与感叹号‘!

’为结尾

问号‘?

’结束

程序设计项目六

在屏幕中间显示:

“中华”两个字.参看demo0.png示例.

提示:

通过字模提取工具,可以提取字地显示信息.

assumeds:

data,cs:

datasegment

db0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0

db1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1

db1,1,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,1,1

db0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0

db0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,0,0,0,0,1,1,0,0,0,0,0

db0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,1,1,0,0,1,1,1,1,0,0,0,0,0

db0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0

db0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0

db0,0,0,1,1,0,0,1,1,0,0,0,0,1,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0

db0,0,1,1,0,0,0,1,1,0,0,1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1,0,0,0

db0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1,0,0,0

db0,0,0,0,0,0,0,1,1,0,0,0,0,1,1,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0

db0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

db1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1

movdl,160

moval,16

muldl

adddi,20

movsp,64

movax,data

callqingp

movbh,16

movbl,25

callzhong

adddi,80

movbl,30

callhua

jmpshortok

zhong:

jcxzbuxianshi

movax,0403h

fh:

adddi,110

buxianshi:

movax,0000h

jmpshortfh

hua:

jcxzbuxianshi1

fh1:

adddi,100

buxianshi1:

jmpshortfh1

qingp:

pushdi

movcx,9000

movax,0000h

adddi,2

loopk1

popdi

ok:

(完)

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

当前位置:首页 > 初中教育 > 政史地

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

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