


- [游客] 不是吧 博主家住哪里啊 呵呵,博主加油学习吧!!! 08/17 12:20
- [hxqt12] 唉,我又要从头学起了。 08/16 23:50
- [游客] add word ptr b,ax adc word ptr b[2],0 07/11 09:54
- [crazyman] 汇编的学习没能给你带来信心,我觉得很遗憾。也许你只是差那么一点点的坚持,就能够证明你自己的能力。 06/28 11:26
- [游客] 谁都不是一开始就行的,那些自信的人也是经历过一些事,从中经受考验,不断地磨练自己才成功的。人与人之间 06/27 14:34
- [starrynight] 其实是有改变的 不是有一句话——唯一不变的就是——变化 可能是你还没有发现,或者说,还没有什 06/27 13:30
- [manbug] mov di,dh*2+dl*160 这也能编译通过??? 06/03 14:16
- [游客] 验证一下吧!!! 04/08 12:29
- [hxqt12] 课程设计2算是完成一半了 当然只是任务程序,不包括安装程序 除了第2个功能 引导现有的操作系统 没 03/30 12:16
- [游客] 顶起~ 03/29 15:19
- [hxqt12] 不知你的程序编译连接成.exe文件后怎么去观察运行结果?难道要用DEBUG吗?? ====== 04/02 14:23
- [xiaofengcanyue] 不知你的程序编译连接成.exe文件后怎么去观察运行结果?难道要用DEBUG吗?? 04/01 22:53
- [xiaofengcanyue] 看你学的真是扎实啊!!,很羡慕啊,希望能像你一样可以学好汇编,还希望多多指教啊!! 03/28 20:07
[2008-03-30 12:15] 课程设计2任务程序(部分)
;按1重起,按2没有效果
;按3进入时钟界面,按ESC返回主界面,按F1改变字体颜色
;按4进入时钟设置界面 按回车键完成设置并返回主界面
;各个子程序我就不一一说明了
assume cs:code
data segment
db 20 dup (0)
data ends
code segment
start: mov ax,0
mov es,ax
mov word ptr es:[208h],offset reset1
mov word ptr es:[20ah],cs ...
;按3进入时钟界面,按ESC返回主界面,按F1改变字体颜色
;按4进入时钟设置界面 按回车键完成设置并返回主界面
;各个子程序我就不一一说明了
assume cs:code
data segment
db 20 dup (0)
data ends
code segment
start: mov ax,0
mov es,ax
mov word ptr es:[208h],offset reset1
mov word ptr es:[20ah],cs ...
阅读全文 |
评论次数(1) |
浏览次数(1418) |
所属类型(汇编作业)
[2008-03-26 08:01] 实验16 写新的int 7ch中断例程(新)
assume cs:code
;的确,换个位子看起来更简洁。
code segment
int7c: jmp short set
table dw sub1,sub2,sub3,sub4
data dw table,data
set: push dx
push ax
push bx
push si
mov si,200h
mov bl,ah
...
;的确,换个位子看起来更简洁。
code segment
int7c: jmp short set
table dw sub1,sub2,sub3,sub4
data dw table,data
set: push dx
push ax
push bx
push si
mov si,200h
mov bl,ah
...
阅读全文 |
评论次数(3) |
浏览次数(1051) |
所属类型(汇编作业)
[2008-03-25 16:04] 实验17
;没有实验,也不知道对是不对。
assume cs:code
cod segment
start: push cs
pop ds
mov si,offset int7c
mov ax,0
mov es,ax
mov di,200h
cld
mov cx,offset int7c_end-offset int7c
rep movsb
...
assume cs:code
cod segment
start: push cs
pop ds
mov si,offset int7c
mov ax,0
mov es,ax
mov di,200h
cld
mov cx,offset int7c_end-offset int7c
rep movsb
...
阅读全文 |
评论次数(1) |
浏览次数(1307) |
所属类型(汇编作业)
[2008-03-23 18:23] 实验16,编写新的int 9中断例程
;效果,按数字键1,2,3,4分别显示sub1,sub2,sub3,sub4的效果
;其他键无效
assume cs:code,ss:stack
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 si,offset int9
...
;其他键无效
assume cs:code,ss:stack
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 si,offset int9
...
阅读全文 |
评论次数(1) |
浏览次数(982) |
所属类型(汇编作业)
[2008-03-23 18:20] 实验16,编写新的int 7ch中断例程
;安装程序
;=================
;这个题可折磨死我了,弄了一晚上才弄好,在写这个实验之前仔细的看了书上的程序
;开始只写了中断程序,没花多长时间,调试成功后开始写安装程序,写了几个小时了
;之前一直找不到方法,不过总算是弄成功了
assume cs:code
code segment
start: push cs
pop ds
mov ax,0
mov es,ax
mov si,offset int7c
...
;=================
;这个题可折磨死我了,弄了一晚上才弄好,在写这个实验之前仔细的看了书上的程序
;开始只写了中断程序,没花多长时间,调试成功后开始写安装程序,写了几个小时了
;之前一直找不到方法,不过总算是弄成功了
assume cs:code
code segment
start: push cs
pop ds
mov ax,0
mov es,ax
mov si,offset int7c
...
阅读全文 |
评论次数(2) |
浏览次数(962) |
所属类型(汇编作业)
[2008-03-23 18:19] 第16章检测题
检测16.1
下面的程序将code段中a处的8个数据累加,结果存储到b处的dword中,补全程序。
assume cs:code
code segment
a dw 1,2,3,4,5,6,7,8
b dd 0
start: mov si,0
mov cx,8
s: mov ax,a[si]
add cs:[16],ax
adc cs:[18],0
add si,2
loop s
int 21h
code ends
end start
...
下面的程序将code段中a处的8个数据累加,结果存储到b处的dword中,补全程序。
assume cs:code
code segment
a dw 1,2,3,4,5,6,7,8
b dd 0
start: mov si,0
mov cx,8
s: mov ax,a[si]
add cs:[16],ax
adc cs:[18],0
add si,2
loop s
int 21h
code ends
end start
...
阅读全文 |
评论次数(3) |
浏览次数(1376) |
所属类型(汇编作业)
[2008-03-21 15:04] 实验15
assume cs:code
code segment
stack segment
db 128 dup (0)
stack ends
start: mov ax,stack
mov ss,ax
mov sp,128
push cs
pop ds
mov ax,0
mov es,ax
mov si,offset int9
mov di,204h
...
code segment
stack segment
db 128 dup (0)
stack ends
start: mov ax,stack
mov ss,ax
mov sp,128
push cs
pop ds
mov ax,0
mov es,ax
mov si,offset int9
mov di,204h
...
阅读全文 |
评论次数(3) |
浏览次数(518) |
所属类型(汇编作业)
[2008-03-21 15:03] 检测题15.1
;呵呵,也实践过了
assume cs:code
data segment
dw 0,0
data ends
stack segment
db 128 dup (0)
stack ends
code segment
start: mov ax,data
mov ds,ax
mov ax,stack
mov ss,ax
mov sp,128
mov ax,0
mov es,ax
...
assume cs:code
data segment
dw 0,0
data ends
stack segment
db 128 dup (0)
stack ends
code segment
start: mov ax,data
mov ds,ax
mov ax,stack
mov ss,ax
mov sp,128
mov ax,0
mov es,ax
...
阅读全文 |
评论次数(1) |
浏览次数(471) |
所属类型(汇编作业)
[2008-03-17 01:57] 实验14
实验14
编程:以“年/月日 时:分:秒”的格式,显示当前的日期、时间。
注意:CMOS RAM中存储着系统的配置信息,除了保存时间信息的单元外,不要向他的单元中写入内容,否则将引起一些系统错误。
;想考虑通过内外双层循环来实现,结果发现两个内循环中有两个值需要改变,一是al 二是"/"和":"
;所以无法实现内外双层循环,于是就用上了call指令,并通过cmp和jb指令,判断al的值的大小来实现循环间的跳转
assume cs:code
code segment
start: mov bx,0b800h
mov ds,bx
...
编程:以“年/月日 时:分:秒”的格式,显示当前的日期、时间。
注意:CMOS RAM中存储着系统的配置信息,除了保存时间信息的单元外,不要向他的单元中写入内容,否则将引起一些系统错误。
;想考虑通过内外双层循环来实现,结果发现两个内循环中有两个值需要改变,一是al 二是"/"和":"
;所以无法实现内外双层循环,于是就用上了call指令,并通过cmp和jb指令,判断al的值的大小来实现循环间的跳转
assume cs:code
code segment
start: mov bx,0b800h
mov ds,bx
...
阅读全文 |
评论次数(1) |
浏览次数(500) |
所属类型(汇编作业)
[2008-03-17 01:55] 第14章检测题
检测14.1
(1)编程:读取CMOS RAM的2号单元的内容。
mov al,2
out 70h,al
in al,71h
(2)编程:向CMOS RAM的2号单元写入0。
mov al,2
out 70h,al
mov al,0
out 71h,al
====================
shl指令和shr指令
将X逻辑左移一位,相当于执行X=X*2
将X逻辑左移N位,相当于执行X=X*2^N
将X逻辑右移一位,相当于执行X=X/2
将X逻辑右移N位,相当于执行X=X/2^N (除X时,只留商舍去余数)
===========...
(1)编程:读取CMOS RAM的2号单元的内容。
mov al,2
out 70h,al
in al,71h
(2)编程:向CMOS RAM的2号单元写入0。
mov al,2
out 70h,al
mov al,0
out 71h,al
====================
shl指令和shr指令
将X逻辑左移一位,相当于执行X=X*2
将X逻辑左移N位,相当于执行X=X*2^N
将X逻辑右移一位,相当于执行X=X/2
将X逻辑右移N位,相当于执行X=X/2^N (除X时,只留商舍去余数)
===========...
阅读全文 |
评论次数(2) |
浏览次数(806) |
所属类型(汇编作业)