汇编语言课程设计四则运算计算器文档格式.docx

上传人:b****1 文档编号:1079013 上传时间:2023-04-30 格式:DOCX 页数:22 大小:218.32KB
下载 相关 举报
汇编语言课程设计四则运算计算器文档格式.docx_第1页
第1页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第2页
第2页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第3页
第3页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第4页
第4页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第5页
第5页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第6页
第6页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第7页
第7页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第8页
第8页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第9页
第9页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第10页
第10页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第11页
第11页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第12页
第12页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第13页
第13页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第14页
第14页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第15页
第15页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第16页
第16页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第17页
第17页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第18页
第18页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第19页
第19页 / 共22页
汇编语言课程设计四则运算计算器文档格式.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

汇编语言课程设计四则运算计算器文档格式.docx

《汇编语言课程设计四则运算计算器文档格式.docx》由会员分享,可在线阅读,更多相关《汇编语言课程设计四则运算计算器文档格式.docx(22页珍藏版)》请在冰点文库上搜索。

汇编语言课程设计四则运算计算器文档格式.docx

在各个子功能模块设计好的情况下,通过主题模块的合理调用,最终实现一个具有简单运算功能的计算器。

程序流程图及说明

此程序流程图简要地表现出了所要实现的功能以及一些功能的大概算法,同时也是我编写的程序的一个总体的框架。

程序流程图说明:

通过流程图,可以看出程序开始运行时,首先输出提示语句,当用户输入后,程序根据所输入的内容进行判断,通过判断的结果来决定调用哪个功能模块,首先要判断输入的字符是否为Q或q,若是,则退出程序,不是则继续输入。

还要判断输入的是否为0--9,‘+’,‘-’,‘*’,‘/’这些字符,若不是会报错,是则将根据运算符号调用相应的功能模块完成运算。

最后将运算的结果显示在屏幕上,并返回主题程序,使用户可以重新输入。

源程序清单

B_P 

EQU 

BYTE 

PTR

W_P 

WORD 

D_P 

DWORD 

CODE 

SEGMENT

ASSUME 

CS:

CODE,DS:

CODE

ORG 

100H

;

主程序开始

NEWSTAR:

JMP 

STAR

EVEN

NUM1 

DW 

0,0

NUM2 

NUM3 

JGV4 

YSF 

LABEL 

WORD

YSF1 

DB 

YSF2 

JUV 

UV 

使DS:

SI指向第一有效字符

OVERS 

NEAR

CLD

PUSH 

AX

OVERS1:

LODSB

CMP 

AL,'

'

JZ 

OVERS1

AL,9

DEC 

SI

AL,13

POP 

RET

输出一个制表符

TAB 

MOV 

SHORT 

DISP

输出一个回车换行符

CRLF 

CALL 

AL,10

显示一个字符

DISP 

DX

AH,2

DL,AL

INT 

21H

检查是否为运算符

ISYSF 

ISJJ

ISYSF1

ISII

ISYSF1:

检查是否是加减运算

ISJJ 

+'

-'

检查是否为乘除运算

ISII 

*'

/'

\'

数据输出

CX=10 

十进制

CX=16 

十六进制

DOUT 

BX

BP

XOR 

BP,BP

DOUT1:

INC 

AX,DX

DX,DX

DIV 

CX

BX,AX

DX,BX

OR 

JNZ 

DOUT1

DOUT2:

ADD 

0'

9'

JBE 

DOUT3

A'

-1

DOUT3:

DOUT2

输入数据在DX:

AX中返回

CX=0 

数据为10进制

CX#0 

数据为16进制

DATE 

DI

AX,AX

DATE1:

DI,AX

JB 

DATE7

JA 

DATE6

DATE2:

AND 

AX,0FH

SHL 

DI,1

RCL 

DX,1

BX,DI

BP,DX

JCXZ 

DATE3

Jmp 

short 

DATE4

DATE3:

DI,BX

ADC 

DX,BP

DATE4:

AX,DI

DX,0

DATE1

DATE5:

DATE2

DATE6:

F'

DATE5

a'

f'

DATE7:

DI,DX

数据1与数据2根据YSF1进行加减运算

JSJJ 

AX,NUM2

DX,NUM2+2

YSF1,'

JSJJ1

SUB 

NUM1,AX

SBB 

NUM1+2,DX

JSJJ2

JSJJ1:

JSJJ2:

数据1与数据2根据YSF1进行乘除运算

JSII1 

BX,OFFSET 

NUM1

JSII2_1

数据2与数据3根据YSF2进行乘除运算

JSII2 

NUM2

JSII2_1:

66H

AX,[BX]

CX,[BX+4]

YSF2,'

JSII2_2

IMUL 

JSII2_3

JSII2_2:

CWD

IDIV 

XCHG 

DX,AX

JSII2_3:

[BX],AX

显示结果

XUJG 

AX,JGV4

DX,JGV4+2

CX,10

UV,10

XUJG0

CX,16

XUJG0:

TEST 

DX,8000H

XUJG1

XUJG2

DOUT

XUJG2:

NOT 

AX,1

XUJG3

('

XUJG3:

)'

XUJG1:

计算结果放入DX:

AX中

JSJG 

JSJJ

AX,NUM1

DX,NUM1+2

从DS:

SI处取一个数据

LOADATE 

LOADATE1

CX,CX

LOADATE0

CX 

取16进制数

LOADATE0:

取数据放入DX:

LOADATE1:

保存数据1数据2及运算符

NUM1+2

NUM2+2

YSF

JUV

JGV4,0 

结果值清零

JGV4+2,0

进行四则运算

SZYS 

首字符是运算符?

SZYS2

不是,取数并保存

SZYS1:

AX,AX 

数据2清零

NUM2,AX

NUM2+2,AX

下个是运算符?

SZYS3

SZYS6

SZYS2:

AX,JGV4 

将结果作为数据1

AX,JGV4+2

NUM1+2,AX

SZYS3:

YSF1,AL

YSF2,AL

是加减运算转

SZYS4

取数据2

NUM2+2,DX

SZYS1 

结果保存在数据1中

SZYS4:

取数据2并保存

SZYS4_1:

ISYSF

运算符2是加减运算?

SZYS5 

不是转

AX 

YSF1,AL 

保存新的运算符

SZYS5:

YSF2,AL 

保存运算符2

取数据3

NUM3,AX

NUM3+2,DX

SZYS4_1 

结果保存在数据2中

SZYS6:

CL,AL

SZYS9

SZYS7:

JSJG

JUV,0

SZYS8

SZYS8:

CL,'

SZYS10

JGV4,AX

JGV4+2,DX

SZYS12

SZYS9:

SZYS11

SZYS7

SZYS10:

SZYS1

SZYS11:

STC

SZYS12:

CLC

数制处理

UVIL 

UVIL1:

UVIL2

UVIL4

UVIL1

UVIL2:

BX,SI

OVERS

UVIL3

LODSW

AX,'

01'

UVIL3:

[BX-1],AL

UVIL4:

预置结果

YVJG 

AH,52H

AX,ES:

[BX-2]

DS,AX

AX,DS:

[0CH]

[0EH]

JGV4+2,AX

CS

DS

ES

保存结果

BCJG 

AX,CS:

JGV4

DS:

[0CH],AX

JGV4+2

[0EH],AX

STAR:

SI,81H

STAR1

STAR0:

DX,OFFSET 

MESS1

STAR4

STAR1:

YVJG

UVIL

STAR0

SAVESP,SP

SZYS

SP,SAVESP

MESS2

CRLF

XUJG

BCJG

MESS3

STAR4:

AH,9

20H

SAVESP 

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

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2