好一个课程设计2, 整整折磨我半个月.
终于拿下了, 虽然还有点小bug, 但是咱也小小的激动了一下, 呵呵
代码有点长, 但是我一点点敲出来的. 希望各位多多指教.
在网上下载了一个VMware 虚拟机.
然后按照百度上的教程装了一个dos6.22的系统.
调试就在这个平台上进行的..
实验环境的搭建我就不多说了, 如果各位还有不懂的, 可以Q我, 这里发截图不太方便, Q:1569423199 希望和各位共同进步.
具体功能如下:
(1)(2)就没什么好说的了
(3)解决了修改屏幕颜色时按键过多键盘缓冲区满造成死机的情况
(4)解决光标跟随情况,但是没加时间,分钟,...
- [zanghufei] 明天继续 01/08 02:55
- [landyking] 好久没来论坛,还是有很多奋进的少年人嘛。 加油喽! 12/02 23:26
- [chinatree] 加油。 12/02 12:50
- [chinatree] 我遇到99%的这种情况都是因为栈顶越界,自己做个调试或者逻辑检查吧。 11/15 00:41
- [游客] 你不适合学习计算机。 转行吧 11/14 11:03
- [zanghufei] 直接运行也是同样的错误信息,command,debug的错误斗一样,纠结了… 11/04 13:35
- [fpamc] 貌似没发现问题。 你是调试的时候出现的问题吧? 一般都是栈出现问题才这样。 你直接运行怎么样? 11/04 06:45
- [fpamc] 对的 10/30 10:06
- [fpamc] xor是异或指令,相同为假,不同为真。xor ax,ax就是把ax置零。 mov ah,11 i 10/30 09:05
- [chinatree] 加油。 10/29 23:47
[2012-12-09 06:28] 课程设计2, 吐槽一句,汇编资料真心很少...
阅读全文 |
评论次数(0) |
浏览次数(674) |
所属类型(汇编作业)
[2012-11-09 15:17] 实验16, 终于大功告成, 不容易啊...小失误引发大毛病....
程序如下, 不发效果图了...
不容易啊.. 因为没注意int指令和iret指令相配合, 导致中断没有正确返回, 报错信息是CPU遇到无效指令..
困惑好几天了.. 现在心里舒服多了..
有点像打了鸡血那么激动...
哈哈, 第17章, 我来啦...!!
======================================================
assume cs:code
stack segment
db 128 dup (0)
stack ends
code segment
set...
不容易啊.. 因为没注意int指令和iret指令相配合, 导致中断没有正确返回, 报错信息是CPU遇到无效指令..
困惑好几天了.. 现在心里舒服多了..
有点像打了鸡血那么激动...
哈哈, 第17章, 我来啦...!!
======================================================
assume cs:code
stack segment
db 128 dup (0)
stack ends
code segment
set...
阅读全文 |
评论次数(0) |
浏览次数(637) |
所属类型(汇编作业)
[2012-11-09 13:21] 还是老问题...CPU无效指令..求解..!!
程序如下: 我重新做了系统, 可还是出现这个毛病.. 不知道到底是程序的原因还是系统的原因, 求大神指教!!!
=================================================
assume cs:code
stack segment
db 128 dup (0)
stack ends
code segment
setscreen: jmp short set
table dw offset sub1 - offset setscreen + 204h
se...
=================================================
assume cs:code
stack segment
db 128 dup (0)
stack ends
code segment
setscreen: jmp short set
table dw offset sub1 - offset setscreen + 204h
se...
阅读全文 |
评论次数(2) |
浏览次数(948) |
所属类型(汇编作业)
[2012-10-28 19:14] 循环读取时间, F1键退出, F2键改变屏幕颜色, 求优化..
RT, 按下F1键返回dos, 按下F2键改变屏幕颜色,
assume cs:code
code segment
data1: db '??/??/?? ??:??:?? ', '$' ;数据段, 存放转换后的ASCII码
data2: db 9, 8, 7, 4, 2, 0, '$' ;单元段, 存放当前时间在cmos ram中存放的单元地址, 用于读取BCD码
start: mov ax, cs
mov ds, ax ;ds:[si]指向data段的数据段
...
assume cs:code
code segment
data1: db '??/??/?? ??:??:?? ', '$' ;数据段, 存放转换后的ASCII码
data2: db 9, 8, 7, 4, 2, 0, '$' ;单元段, 存放当前时间在cmos ram中存放的单元地址, 用于读取BCD码
start: mov ax, cs
mov ds, ax ;ds:[si]指向data段的数据段
...
阅读全文 |
评论次数(4) |
浏览次数(992) |
所属类型(汇编作业)
[2012-10-28 14:35] 实验15, 继续加油...
坚持不住的时候, 再坚持一小下...!
assume cs:code
stack segment
db 128 dup (0)
stack ends
code segment
start: mov ax, stack
mov ss, ax
mov sp, 128
push cs
pop ds
mov ax, 0
mov es, ax
mov si, offset ...
assume cs:code
stack segment
db 128 dup (0)
stack ends
code segment
start: mov ax, stack
mov ss, ax
mov sp, 128
push cs
pop ds
mov ax, 0
mov es, ax
mov si, offset ...
阅读全文 |
评论次数(1) |
浏览次数(980) |
所属类型(汇编作业)
[2012-10-23 14:48] 实验14, 优化完毕
优化前:
=======================================================
assume cs:code
code segment
start:
mov bl, 12
mov bh, 22
mov ah, '/'
mov al, 9
mov si, 1
mov cx, 3
s: cmp cx, si
...
=======================================================
assume cs:code
code segment
start:
mov bl, 12
mov bh, 22
mov ah, '/'
mov al, 9
mov si, 1
mov cx, 3
s: cmp cx, si
...
阅读全文 |
评论次数(3) |
浏览次数(259) |
所属类型(汇编作业)
[2012-10-17 13:50] 实验12,请前辈指教.帮忙简化..
assume cs:code
code segment
start: mov ax, cs ;安装
mov ds, ax
mov si, offset do0
mov ax, 0
mov es, ax
mov di, 200h
mov cx, offset do0end - offset do0
cld ;复制...
code segment
start: mov ax, cs ;安装
mov ds, ax
mov si, offset do0
mov ax, 0
mov es, ax
mov di, 200h
mov cx, offset do0end - offset do0
cld ;复制...
阅读全文 |
评论次数(2) |
浏览次数(239) |
所属类型(汇编作业)
[2012-10-02 23:40] 课程设计1. 请老师检查..
assume cs:code
data segment
db '1975','1976','1977','1978','1979','1980','1981','1982','1983'
db '1984','1985','1986','1987','1988','1989','1990','1991','1992'
db '1993','1994','1995'
;以上表示年份
dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514
dd 345980,5908...
data segment
db '1975','1976','1977','1978','1979','1980','1981','1982','1983'
db '1984','1985','1986','1987','1988','1989','1990','1991','1992'
db '1993','1994','1995'
;以上表示年份
dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514
dd 345980,5908...
阅读全文 |
评论次数(1) |
浏览次数(250) |
所属类型(汇编作业)
[2012-09-16 20:13] 实验9,请前辈检查.
assume cs:code, ds:data
data segment
db'welcome to masm!'
data ends
code segment
start: mov ax, data
mov ds, ax
mov bx, 0
mov ax, 0b800h
mov es, ax
mov bp, 6e0h
mov si, 64
mov cx, 16
...
data segment
db'welcome to masm!'
data ends
code segment
start: mov ax, data
mov ds, ax
mov bx, 0
mov ax, 0b800h
mov es, ax
mov bp, 6e0h
mov si, 64
mov cx, 16
...
阅读全文 |
评论次数(0) |
浏览次数(226) |
所属类型(汇编作业)
[2012-09-12 21:53] 实验7, 请前辈检查.
assume cs:code, es:table, ds:data
data segment
db '1975', '1976', '1977', '1978', '1979', '1980', '1981', '1982', '1983'
db '1984', '1985', '1986', '1987', '1988', '1989', '1990', '1991', '1992'
db '1993', '1994', '1995'
; 以上是表示21年的21个字符串[bx]
dd 16, 22, 382, 1356, 2...
data segment
db '1975', '1976', '1977', '1978', '1979', '1980', '1981', '1982', '1983'
db '1984', '1985', '1986', '1987', '1988', '1989', '1990', '1991', '1992'
db '1993', '1994', '1995'
; 以上是表示21年的21个字符串[bx]
dd 16, 22, 382, 1356, 2...
阅读全文 |
评论次数(0) |
浏览次数(223) |
所属类型(汇编作业)