- 博客(6)
- 资源 (1)
- 收藏
- 关注
原创 汇编实验--射击游戏框架
任务2 - 射击游戏框架 编写程序一个“射击游戏”(有些太弱了哈),用上、下、左、右键控制跳上、跳下、装子弹、射击的动作,按ESC键退出游戏。 以下结合了汇编的简洁写法,学以致用emm 注释为个人理解,不用太过借鉴 // **借鉴自王爽著《汇编语言》第三版例题新int9中断例程的安装。** .8086 .MODEL small .data db 16 dup(0) ;分配数据段字空间,否则出现显示字符串乱码 str1 db 'Game is running...',0ah,0dh,'$' ;字符串后加1
2020-06-15 04:58:35
1387
原创 汇编程序的简洁写法——倒序输出字符串在输出设备上
任务1-汇编程序的简洁写法 编写程序:从键盘上输入一个字符串,以¥结束,再将字符串倒序输出(字符串不超过80个字符)。要求用更简洁的写新法完成 输入样例:abcd#1234 efg$ 输出样例:gfe 321#dcba 提示解法: 1、输入输出:字符的输入输出可以用DOS中断的01H功能,也可以用BIOS中断; 2、数据结构:可以用栈结构实现倒序,也可以专门设数据区,接受输入、变换并输出。 **思路分析:**用栈实现倒序输出,int 21h的01h、09h号功能分别实现字符的输入、字符串的输出 // Ed
2020-06-14 20:14:35
2324
2
原创 汇编任务3-用中断输入并显示
DOS中断输入并显示 1. 题目要求: 利用BIOS系统功能调用,将键盘输入的小写字母转换成大写字母后输出显示,输入非小写字母时,什么也不显示,等待其他输入;输入‘$’字符时结束。 2. 汇编程序如下: // DOS提供的 int 21h 中断例程 assume cs:code code segment begin: mov ah,01h ;从标准输入设备输入字符,如键盘 int 21h cmp al,'$' ;输入‘$’字符时结束 je stop cmp al,'a' ;控制输入范围
2020-06-03 12:47:17
881
原创 汇编任务1-自定义中断,用中断来算算术
自定义中断的算术问题 (1)自定义79h号中断,在中断被调用时,可以将(ah)和(al)中的两个数按(bl)中提供的运算符(’+‘或’-’)计算,其结果由(ah)返回。编程序实现该中断并将其安装到0:200H。例如,(ah)=5,(al)=3,(bl)=’+‘时,(ah)=8;(ah)=5,(al)=3,(bl)=’-’ 时,(ah)=2。 定义并安装中断例程的代码为(加入足量注释): // 任务:自定义79h号中断,在中断被调用时,可以将(ah)和(al)中的两个数按(bl)中提供的运算符('+'或'-'
2020-06-03 00:51:05
1165
原创 汇编语言任务2-最小字符
汇编语言实验 任务2-最小字符 题目要求 (答案仅供参考,若发现错误请加以斧正) 在数据区中给出10位评委为歌手的打分,最高分为10分,最低分为0分。 歌手的最终成绩为去掉一个最高分和一个最低分后的平均值(整数部分),请计算并将成绩记录在result处。 data segment singer db 8, 8, 8, 6, 10, 6, 6, 7, 7, 6 result db 0 data ends 请在程序中加入足量的注释 带注释的源程序及运行结果如下: Assembly Language assum
2020-05-25 11:48:34
530
原创 汇编语言任务1—字符串比较
任务1字符串比较 问题 如下所示的数据区中给出两个字符串,请比较它们的大小,并将结果记录在result处:相等(E)、前大后小(A)、前小后大(B) data segment str1 db ‘Yan Tai’,0 str2 db ‘Yan Cheng’,0 result db 0 data ends 请在程序中加入足量的注释 报告内容:带注释的源程序及运行结果如下 DOSBox下的运行结果 源程序 内联代码片。 在DOSBox中的运行情况 assume cs:code,ds:data data s
2020-05-24 23:54:24
2577
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅