assume cs:code
code segment
start:
mov ah,0
int 16h
cmp al,'r'
je r_s
cmp al,'g'
je g_s
cmp al,'b'
je b_s
r_s: mov ah,4
jmp short setcolor
g_s: mov ah,2
jmp short setcolor
b_s: mov ah,1
setcolor:
mov bx,0b800h
mov ds,bx
mov si,1
mov cx,2000
sc_s: and byte pt...
- [shuimx] 不明白。我写的简化了。就是和书上的一样,结果也是一样的。是 3002 。 06/07 08:41
- [游客] 你写的和书上不一样哎 06/06 17:34
- [游客] 检测点11.4你明白了吗 06/06 17:34
- [游客] 顶 06/06 17:25
- [游客] 先运行一下你的程序,在运行一下下面的检测程序: assume cs:code code segm 06/06 17:17
- [游客] 可以给我讲讲汇编吗?同意的话,太感谢了。QQ:791505640 05/30 22:46
- [游客] 可以给我讲讲汇编吗?同意的话,太感谢了。QQ:791505640 05/30 22:46
[2011-06-23 16:40] 第17章(1) 接收用户的输入,改变屏幕的前景色
阅读全文 |
评论次数(0) |
浏览次数(417) |
所属类型(汇编作业)
[2011-06-23 11:29] 第16章汇编测试题目
(1)
将标号a处的8个数累加的和放到标号b处所在的单元中,下面选项中的程
序正确的是______。
1、 assume cs:code
code segment
mov si,0
mov cx,8
s: add b,a[si]
inc si
loop s
mov ax,4c00h
int 21h
a db 1,2,3,4,5,6,7,8
b db 0
code ends
end
2...
将标号a处的8个数累加的和放到标号b处所在的单元中,下面选项中的程
序正确的是______。
1、 assume cs:code
code segment
mov si,0
mov cx,8
s: add b,a[si]
inc si
loop s
mov ax,4c00h
int 21h
a db 1,2,3,4,5,6,7,8
b db 0
code ends
end
2...
阅读全文 |
评论次数(0) |
浏览次数(432) |
所属类型(汇编作业)
[2011-06-23 11:22] 实验16
实验16的中断程序的代码
assume cs:code,ss:stack
stack segment
dw 64 dup (0)
stack ends
code segment
start:
mov ax,stack
mov ss,ax
mov sp,64
;安装 int_7ch中断 0:200
mov ax,code
mov ds,ax
mov si,offset int_start
mov ax,0
mov es,ax
mov di,200h
mov cx,offset int_end - offset int_sta...
assume cs:code,ss:stack
stack segment
dw 64 dup (0)
stack ends
code segment
start:
mov ax,stack
mov ss,ax
mov sp,64
;安装 int_7ch中断 0:200
mov ax,code
mov ds,ax
mov si,offset int_start
mov ax,0
mov es,ax
mov di,200h
mov cx,offset int_end - offset int_sta...
阅读全文 |
评论次数(0) |
浏览次数(415) |
所属类型(汇编作业)
[2011-06-23 11:15] 16章子程序 setscreen 带参数检测
assume cs:code,ss:stack
stack segment
dw 64 dup (0)
stack ends
code segment
start:
mov ax,stack
mov ss,ax
mov sp,64
mov ah,6;功能号 {0 1 2 3}
mov al,8;颜色 {0 1 2 3 4 5 6 7}
call setscreen
mov ah,4ch
int 21h
;;;;;;-----子程序setscreen--------;;;;;;;
setscreen:
jmp short...
stack segment
dw 64 dup (0)
stack ends
code segment
start:
mov ax,stack
mov ss,ax
mov sp,64
mov ah,6;功能号 {0 1 2 3}
mov al,8;颜色 {0 1 2 3 4 5 6 7}
call setscreen
mov ah,4ch
int 21h
;;;;;;-----子程序setscreen--------;;;;;;;
setscreen:
jmp short...
阅读全文 |
评论次数(0) |
浏览次数(475) |
所属类型(汇编作业)
[2011-06-18 11:27] 16章(2)显示正弦值的子程序(带参数检测)
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
mov ax,125
call show_sin
mov ah,4ch
int 21h
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;show_sin 子程序:显示 sin(ax)的数值
;参数 有1个
;ax:角度值 {0 30 60 90 120...
stack segment
db 128 dup (0)
stack ends
code segment
start:
mov ax,stack
mov ss,ax
mov sp,128
mov ax,125
call show_sin
mov ah,4ch
int 21h
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;show_sin 子程序:显示 sin(ax)的数值
;参数 有1个
;ax:角度值 {0 30 60 90 120...
阅读全文 |
评论次数(0) |
浏览次数(412) |
所属类型(汇编作业)
[2011-06-18 10:23] 16章(1)以16进制的形式在屏幕中间显示给定的byte型数据
assume cs:code,ds:data
data segment
a db "0123456789abcdef";保存“0-f”的ascii码
b db 0,0;保存byte型数据16进制的形式
data ends
code segment
start:
mov ax,data
mov ds,ax
mov ax,15;byte型数据 200
mov bl,16
div bl
mov bh,0
cmp al,0;al 低4位
je gewei
mov bl,al
mov cl,a[bx]
mov b,cl
g...
data segment
a db "0123456789abcdef";保存“0-f”的ascii码
b db 0,0;保存byte型数据16进制的形式
data ends
code segment
start:
mov ax,data
mov ds,ax
mov ax,15;byte型数据 200
mov bl,16
div bl
mov bh,0
cmp al,0;al 低4位
je gewei
mov bl,al
mov cl,a[bx]
mov b,cl
g...
阅读全文 |
评论次数(0) |
浏览次数(479) |
所属类型(汇编作业)
[2011-06-10 16:01] 实验15
;运行环境:开始-运行-Command.com进入Command.com运行
assume cs:code
code segment
start:
;安装新int9 的中断例程
mov ax,code
mov ds,ax
mov si,offset int_begin
mov ax,0
mov es,ax
mov di,204h
mov cx,offset int_end - offset int_begin
cld
rep movsb
;修改中断向量表
mov ax,0
mov ds,ax
mov ax,ds:[9*4]...
assume cs:code
code segment
start:
;安装新int9 的中断例程
mov ax,code
mov ds,ax
mov si,offset int_begin
mov ax,0
mov es,ax
mov di,204h
mov cx,offset int_end - offset int_begin
cld
rep movsb
;修改中断向量表
mov ax,0
mov ds,ax
mov ax,ds:[9*4]...
阅读全文 |
评论次数(0) |
浏览次数(426) |
所属类型(汇编作业)
[2011-06-10 15:39] 15.5 新的int 9 中断例程
注意下面的程序要在 开始-运行-Command.com进入Command.com运行。
从开始-运行-cmd 进入了cmd.exe运行的这个程序,应该是会有问题的。
command.com是ms-dos的应用程序,(严格地说,是内部命令处理程序)是所有内部命令的集合,调入内存后可以接受键入的内部命令,并按照dos的规定的功能执行命令,cmd.exe是基于windows系统运行的程序,只是为习惯dos操作提供的一个命令提示符窗口。
cmd下会恢复一些用户已经更改的中断向量。Command.com下不恢复。
assume cs:code
code segme...
从开始-运行-cmd 进入了cmd.exe运行的这个程序,应该是会有问题的。
command.com是ms-dos的应用程序,(严格地说,是内部命令处理程序)是所有内部命令的集合,调入内存后可以接受键入的内部命令,并按照dos的规定的功能执行命令,cmd.exe是基于windows系统运行的程序,只是为习惯dos操作提供的一个命令提示符窗口。
cmd下会恢复一些用户已经更改的中断向量。Command.com下不恢复。
assume cs:code
code segme...
阅读全文 |
评论次数(0) |
浏览次数(409) |
所属类型(汇编作业)
[2011-06-10 15:08] 第15章汇编测试题目
(1)
下面的说法正确的是______。
1、 外设的输入随时都能获得CPU的处理。
2、 计算机外设的输入不直接送入CPU,而是直接送入内存。
3、 标志寄存器IF位决定着中断信息能否被CPU处理。
=== 4、 以上说法都有错误。
(2)
以下说法错误的是_____。
1、 CPU通过总线和端口来与外部设备进行联系。
===2、 不可屏蔽中断过程的第一步是取中断类型码。
3、 外部可屏蔽中断的中断类型码是通过数据总线送入CPU的。
4、 中断过程中将IF置为0是为了在中断过程中禁止其他的可屏蔽
中断。
(...
下面的说法正确的是______。
1、 外设的输入随时都能获得CPU的处理。
2、 计算机外设的输入不直接送入CPU,而是直接送入内存。
3、 标志寄存器IF位决定着中断信息能否被CPU处理。
=== 4、 以上说法都有错误。
(2)
以下说法错误的是_____。
1、 CPU通过总线和端口来与外部设备进行联系。
===2、 不可屏蔽中断过程的第一步是取中断类型码。
3、 外部可屏蔽中断的中断类型码是通过数据总线送入CPU的。
4、 中断过程中将IF置为0是为了在中断过程中禁止其他的可屏蔽
中断。
(...
阅读全文 |
评论次数(0) |
浏览次数(444) |
所属类型(默认类型)
[2011-06-10 11:04] 15.4 编写int 9 中断例程不调用原来的中断例程的办法
assume cs:code
data segment
dw 0,0
data ends
stack segment
db 256 dup (0)
stack ends
code segment
start:
mov ax,stack
mov ss,ax
mov sp,256
mov ax,data
mov ds,ax
mov ax,0
mov es,ax
mov ax,es:[9*4];保存原 int 9 的入口地址
mov ds:[0],ax
mov ax,es:[9*4+2]
mov ds:[...
data segment
dw 0,0
data ends
stack segment
db 256 dup (0)
stack ends
code segment
start:
mov ax,stack
mov ss,ax
mov sp,256
mov ax,data
mov ds,ax
mov ax,0
mov es,ax
mov ax,es:[9*4];保存原 int 9 的入口地址
mov ds:[0],ax
mov ax,es:[9*4+2]
mov ds:[...
阅读全文 |
评论次数(0) |
浏览次数(828) |
所属类型(汇编作业)
『 查看更多文章 』