汇编语言课程设计题目
⑴ 王爽汇编语言课程设计2实验环境具体怎么弄,还有程序设计好后是直接在DOS下运行还是在软盘下
其实很简单:下载一个masm6.15的压缩文件(直接在网络主页里搜“masm6.15下载”),大概4.32M,下载后,解压缩到D:盘,将文件夹的名字改为masm,这是因为解压后的名字默认为masm 615,中间有个空格不太好(因为再DOS下对于有空格的文件夹的名字要用双引号括起来,比较麻烦)。
1、用记事本或其他文本编辑器(例如Editplus)写好汇编程序,保存为.asm格式的文件(直接将后缀名修改为.asm),例如文件名为test.asm,放到D:盘。
2、在windows下点击“开始”,再点击“运行”,在编辑框中输入cmd,切换到DOS界面下。进入D:盘——d:,再回车。
3、在当前目录(D:盘下)用cd命令,切换到刚才解压到D:盘的masm目录下的BIN目录下——
cd masm\bin
4、 然后生产目标文件,使用命令——masm D:\test.asm(后缀名可以省略,默认为.asm),生成.obj的目标文件,该目标文件在D:\masm\BIN目录下。将生成的.obj文件拷贝到D:盘根目录下(其实不用拷贝也行,只要下面能找到该.obj文件就行,个人建议将.obj文件和.asm文件放到一起比较清楚)。
5、再使用命令将.obj目标文件链接成.exe文件(还在D:\masm\BIN目录下使用命令)——
link D:\test.obj(后缀名可以省略,默认为.obj),出现选项让你选,第一个选项是让你输入生成的.exe文件的名字,例如输入——D:\test.exe(后缀名可以省略,默认为.exe),其他选项暂时可以不考虑(其实看他们的名字就能看懂)。这样就在D:盘下生成了一个test.exe的可执行文件。
6、双击该文件,发现屏幕闪了一下就没了,说明程序是运行了。要想看到程序每一步的执行情况,那么生成的test.exe文件要在Debug模式下运行。在DOS界面下(任何目录)输入命令——debug D:\test.exe(此时后缀名.exe必须要有),回车后就开始运行该可执行文件了。按照王爽那本书上从第91页开始的程序执行过程的跟踪使用的一些命令,例如:r命令、u命令、d命令、g命令、p命令等的使用,就能查看和控制程序的运行了。
⑵ 汇编语言课程设计题目要求如下
用C语言写,然后反汇编
⑶ 汇编语言课程设计题:
都是没人回答的问题,好郁闷
⑷ 汇编语言课程设计题目
命令行参数编程:
还需要什么提示呢
⑸ 课程设计题目:简单字符串处理系统的实现或乘除法指令功能的实现 (用汇编语言编写程序) 请高手帮忙
完成日期: 2011 年 1 月8日
一、课程设计目的
1、掌握并巩固顺序、分支、循环结构以及子程序结构的汇编程序设计基本技术和基本方法。
2、理解计算机在指令系统级的运行原理,熟悉DOS功能子程序的调用。
3、掌握输入输出子程序的编写。
4、掌握从键盘输入字符(串)与在显示屏上显示字符(串)的基本方法。
二、课程设计内容
1、输入一个字符串,扫描该字符串,按数字、字母和特殊字符3类,把字符分类输出到屏幕,并计算其中数字字符的和,把求得的和以十进制数的形式输出到屏幕。
三、课程设计过程
1、程序清单
data segment
mess db 0dh,0ah,'Input String: $'
sum db 0
te db 0;特殊符号个数
sz db 0 ;数字个数
dAx db 0 ;大写个数
xXx db 0 ;小写个数
string db 'DaXieZiMu:$'
string1 db 'XiaoXieZiMu:$'
string2 db 'ShuZiZhiHe:$'
string3 db 'ShuZi:$'
string4 db 'QiTaZiFu:$'
SZ_C DB 100 DUP ('$')
DX_C DB 100 DUP ('$')
XX_C DB 100 DUP ('$')
CRLF DB 0DH,0AH,'$'
tesu db 100 p ('$')
data ends
code segment
assume cs:code, ds:data
main proc far
start:
push ds
xor ax,ax
push ax
mov ax,data
mov ds,ax
;-------------------------
call crlf_p
mov ah,09
mov dx,offset mess
int 21h
next:
mov ah,01
int 21h
cmp al,0DH
jnz tesu1
jmp DISP_1 ;显示结果
tesu1:
cmp al,'!'
jl NEXT
cmp al,'/'
jg GOON
inc te
MOV BX,OFFSET tesu
MOV CX,0
MOV CL,te
ADD BX,CX
DEC BX
MOV [BX],AL
JMP NEXT
GOON:
cmp al,'0'
jl NEXT
cmp al,'9'
jg NO_0_9
inc SZ
mov bx,offset SZ_C
mov cx,0
mov cl,SZ
add bx,cx
dec bx
mov [bx],al
sub al,30h
add sum,al
jmp next
tesu2:
cmp al,':'
jl NEXT
cmp al,'@'
jg NO_0_9
inc te
MOV BX,OFFSET tesu
MOV CX,0
MOV CL,te
ADD BX,CX
DEC BX
MOV [BX],AL
JMP NEXT
NO_0_9:
cmp al,'A'
jl next
cmp al,'Z'
jg NO_D_AZ
inc DAX
mov bx,offset DX_C
mov cx,0
mov cl,DAX
add bx,cx
dec bx
mov [bx],al
jmp next
tesu3:
cmp al,'['
jl NEXT
cmp al,06h
jg NO_D_AZ
inc te
MOV BX,OFFSET tesu
MOV CX,0
MOV CL,te
ADD BX,CX
DEC BX
MOV [BX],AL
JMP NEXT
NO_D_AZ:
cmp al,'a'
jl next
cmp al,'z'
jg NO_X_AZ
inc XXX
mov bx,offset XX_C
mov cx,0
mov cl,XXX
add bx,cx
dec bx
mov [bx],al
jmp next
tesu4:
cmp al,'{'
jl NEXT
cmp al,7Ch
jg NO_X_AZ
inc te
MOV BX,OFFSET tesu
MOV CX,0
MOV CL,te
ADD BX,CX
DEC BX
MOV [BX],AL
JMP NEXT
NO_X_AZ:
jmp next
DISP_1:
CALL CRLF_P
CALL CRLF_P
mov dx,offset string2
mov ah,9
int 21h
mov al,sum
CALL DISP_CZR
mov dx,offset string3
mov ah,9
int 21h
mov ah,09
lea dx,SZ_C
int 21h
;-----------------
CALL CRLF_P
mov dx,offset string
mov ah,9
int 21h
mov ah,09
lea dx,DX_C
int 21h
;-------------------
CALL CRLF_P
mov dx,offset string1
mov ah,9
int 21h
mov ah,09
lea dx,XX_C
int 21h
CALL CRLF_P
;mov al,te
;CALL DISP_CZR
mov dx,offset string4
mov ah,9
int 21h
mov ah,09
lea dx,tesu
int 21h
;---------------------
CALL CRLF_P
;-------------------------
ENDD:
ret
main endp
;=========================================
DISP_CZR PROC NEAR ;显示10进制数字子程序
xor ah,ah
mov bl,100d
div bl
push ax
add al,30h
mov dl,al
mov ah,2
int 21h
pop ax
mov al,ah
xor ah,ah
mov bl,10d
div bl
add ax,3030h
push ax
pop dx
mov ah,2
int 21h
mov dl,dh
int 21h
mov dl,':'
int 21H
mov dl,' '
int 21h
RET
DISP_CZR ENDP
;==========================================
CRLF_P PROC NEAR ;回车换行子程序
mov ah,09
lea dx,CRLF
int 21h
ret
CRLF_P ENDP
;=========================================
code ends
end start
2、系统运行结果截图
实验总结:
这次数据库课程设计是对我们所学知识的加深及巩固,将我们所学的知识加以实践,这对我们来说是一次尝试,又可以算是一个创新过程,也可以说是一个挑战的过程。
这次我们利用课本上自己所学到的知识完成了此次设计,这本身就是一个知识转化为生产力的过程,这也使很多同学在一定程度上增强了对学习的热情,对我们今后的学习有极其大的帮助。
由于我们对知识掌握不全,所以此次实验花费我们不少的时间,通过跟同学及有关老师讨论,最后还是完成了次设计。所以,当我们学习中碰到问题时,不要放弃,因为在和其他同学交流过程中,我们会发现很多答案,从而学到很多知识,最后会有成功的喜悦。
⑹ intel汇编语言课程设计
intel汇编语言课程设计:编密码
要求: 按照以下规律编密码:字母A变为E,a变为e,即变成其他的第一4个字母,W变A,X变B,Y变C,Z变为D,非字母不变。如“CHINA”变为“GLMRE!”
; 本程序通过编译,运行正确
Code Segment
Assume CS:Code,DS:Code
; -----------------------------------------
; 功能:显示指定地址(Str_Addr)的字符串
; 入口:
; Str_Addr=字符串地址(要求在数据段)
; 用法: Output Str_Addr
; 用法举例:Output PromptStr
Output MACRO Str_Addr
lea dx,Str_Addr
mov ah,9
int 21h
EndM
; -----------------------------------------
Prompt_Str db 'Please input a string: $'
Prompt_Str1 db 13,10,'The encoded string: $'
Press_Key db 13,10,13,10,'Press any key to exit...$'
Start: push cs
pop ds
push cs
pop es
Output Prompt_Str ;提示输入字符串
lea dx,Buffer ;字符串缓冲区地址
mov ah,0ah ;dos功能调用0ah号功能:输入字符串
int 21h
lea si,Buffer[1] ;实际输入的字符个数地址
lodsb ;读入实际输入的字符个数
test al,0ffh
jz Exit_Proc ;若直接回车,未输入任何字符,则结束程序,返回操作系统
xor ah,ah ;累加器高位字节清零
mov cx,ax
@@Encoding: lodsb ;读入一个字符
mov ah,al
and ah,0dfh ;假定这个字符为字母,将小写变为大写
cmp ah,'A'
jb @@Next_Chr ;不是字母,不加密
cmp ah,'Z'
ja @@Next_Chr ;不是字母,不加密
add al,4 ;加密
mov ah,al
and ah,0dfh
cmp ah,'Z' ;加密后的字符超出字母范围?
jbe $+4 ;否,转去将加密后的字符写回原位置
sub al,26 ;调整
mov [si-1],al ;加密后的字符写回原位置
@@Next_Chr: loop @@Encoding
mov byte ptr [si],'$' ;将这个字符串以$符结尾,准备用dos功能调用9号功能显示这个字符串
Output Prompt_Str1 ;提示显示加密后的字符串
Output Buffer[2] ;显示加密后的字符串
Output Press_Key
mov ah,1
int 21h
Exit_Proc: mov ah,4ch ;结束程序
int 21h
Buffer db 255,? ;字符串缓冲区
Code ENDS
END Start ;编译到此结束
⑺ 汇编语言课程设计 两首歌
标记
⑻ 汇编语言课程设计
CODESEGMENT
ASSUMECS:CODE
STR1DB'$'
LENGTH1DB0
START:PUSHCS
POPDS
CALLCOUNT
MOVAL,LENGTH1
CALLDSPAL
MOVAH,4CH
INT21H
;===============================
COUNT:
LEASI,STR1
CLD
@1:
LODSB
CMPAL,'$'
JE@EXIT
CMPAL,'0'
JB@1
CMPAL,'9'
JA@1
INCBYTEPTRLENGTH1
JMP@1
@EXIT:
RET
;===============================
DSPALPROCNEAR
PUSHAX
PUSHBX
PUSHCX
PUSHDX
PUSHF
XORAH,AH
XORCX,CX
MOVBL,10
@DSPAL1:
DIVBL
INCCX
MOVDL,AH
XORAH,AH
ORDX,30H
PUSHDX
CMPAL,0
JNE@DSPAL1
MOVAH,2
@DISPAL2:
POPDX
INT21H
LOOP@DISPAL2
MOVDL,32
INT21H
POPF
POPDX
POPCX
POPBX
POPAX
RET
DSPALENDP
;================================
CODEENDS
ENDSTART
⑼ 汇编语言课程设计
杨辉三角最本质的特征是,它的两条斜边都是由数字1组成的,而其余的数则是等于它肩上的两个数之和。
⑽ 汇编语言课程设计---关于子程序和排序的
要是用C就简单了
不过可以建议你在ADS下用C语言写好,然后查看他的汇编语言就好了,每句话都有汇编解释。