Dos汇编
链接: http://pan.baidu.com/s/17WuIN
密码: qjfm...
- [h2o] 在子程序dtoc2中调用了divdw了 11/23 11:09
- [752495796] 你编写的子程序divdw 在主程序中都没有调用 是不是应该要在算人均的时候调用一下呢? 11/17 17:17
- [hky987654321] 祝贺毕业! 08/11 10:45
- [cutebe] 哇,恭喜完成课程设计二 ^_^ 08/10 15:56
- [h2o] 做课程设计2时有显示日期时间的功能,又写了一遍,不仅增加了动态显示时间而且添加了q键退出功能 - 08/08 18:41
- [h2o] 感觉写得复杂了,改天重写一遍 07/27 22:05
- [hky987654321] 自我纠正:mov cx,40h 是对的。 07/27 09:46
- [hky987654321] 第二题 assume cs:code code segment mov 07/26 21:05
[2013-11-23 11:35] 分享一下学习Dos汇编时收集的一些资料
阅读全文 |
评论次数(0) |
浏览次数(634) |
所属类型(汇编作业)
[2013-08-10 19:58] 研究试验4
程序F.C
---------------
f()
{
*(char far *)(0xb8000000+160*10+80)='a';
*(char far *)(0xb8000000+160*10+81)=2;
}
---------------
程序M.C
---------------
main()
{
*(char far *)(0xb8000000+160*10+80)='a';
*(char far *)(0xb8000000+160*10+81)=2;
}
---------------
用TC.exe对F.C进行编译,用...
---------------
f()
{
*(char far *)(0xb8000000+160*10+80)='a';
*(char far *)(0xb8000000+160*10+81)=2;
}
---------------
程序M.C
---------------
main()
{
*(char far *)(0xb8000000+160*10+80)='a';
*(char far *)(0xb8000000+160*10+81)=2;
}
---------------
用TC.exe对F.C进行编译,用...
阅读全文 |
评论次数(0) |
浏览次数(774) |
所属类型(汇编实验)
[2013-08-10 17:55] 研究试验3
(1)
C语句对应的汇编代码
---------------------
*(char *)0x2000='a';
mov byte ptr [2000h],61
*(int *)0x2000=0xf;
mov word ptr [2000h],0fh
*(char far *)0x20001000='a';
mov bx,2000h
mov es,bx
mov bx,1000h
mov byte ptr es:[bx],61
_AX=0x2000;
mov ax,2000h
*(char *)_AX='b';
mov bx,ax
mov...
C语句对应的汇编代码
---------------------
*(char *)0x2000='a';
mov byte ptr [2000h],61
*(int *)0x2000=0xf;
mov word ptr [2000h],0fh
*(char far *)0x20001000='a';
mov bx,2000h
mov es,bx
mov bx,1000h
mov byte ptr es:[bx],61
_AX=0x2000;
mov ax,2000h
*(char *)_AX='b';
mov bx,ax
mov...
阅读全文 |
评论次数(0) |
浏览次数(792) |
所属类型(汇编实验)
[2013-08-10 14:58] 研究试验1~2
研究试验1 搭建一个精简的C语言开发环境
----------------
经测试,编译时可正常通过,连接时,依次缺少下列文件:
c0s.obj
emu.lib
maths.lib
graphics.lib
cs.lib
研究试验2 使用寄存器
----------------
1.main函数在代码段中的偏移地址为1fa(printf("%x\n",main))
2.C语句对应的汇编代码
------
_AX=1;
mov ax,1
_BX=1;
mov bx,1
_CX=2;
mov cx,2
_AX=_BX+_CX;
mov a...
----------------
经测试,编译时可正常通过,连接时,依次缺少下列文件:
c0s.obj
emu.lib
maths.lib
graphics.lib
cs.lib
研究试验2 使用寄存器
----------------
1.main函数在代码段中的偏移地址为1fa(printf("%x\n",main))
2.C语句对应的汇编代码
------
_AX=1;
mov ax,1
_BX=1;
mov bx,1
_CX=2;
mov cx,2
_AX=_BX+_CX;
mov a...
阅读全文 |
评论次数(0) |
浏览次数(799) |
所属类型(汇编实验)
[2013-08-10 13:17] 课程设计2
-------------------------------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;任务:编写一个可以自行启动计算机,不需要在现有操作系统环境中运行的程序
;功能:1)重新启动计算机
; 2)引导现有的操作系统
; 3)进入时钟程序
; 4)设置时间
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
assume cs:code
code segment
set...
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;任务:编写一个可以自行启动计算机,不需要在现有操作系统环境中运行的程序
;功能:1)重新启动计算机
; 2)引导现有的操作系统
; 3)进入时钟程序
; 4)设置时间
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
assume cs:code
code segment
set...
阅读全文 |
评论次数(2) |
浏览次数(1117) |
所属类型(汇编实验)
[2013-08-06 23:17] DosAsm实验环境搭建
实验10以后,大部分实验的测试都是在dosbox下完成的
---------------------------------------------------
dosbox相关介绍:
http://www.asmedu.net/bbs/pasteinfo.jsp?part=1&level=book&kind=1002&qkSg=2&qID=65676&readSg=1
下载地址:
http://www.dosbox.com/download.php?main=1
实验17
---------------------------------------------
17...
---------------------------------------------------
dosbox相关介绍:
http://www.asmedu.net/bbs/pasteinfo.jsp?part=1&level=book&kind=1002&qkSg=2&qID=65676&readSg=1
下载地址:
http://www.dosbox.com/download.php?main=1
实验17
---------------------------------------------
17...
阅读全文 |
评论次数(0) |
浏览次数(1038) |
所属类型(汇编实验)
[2013-08-06 22:50] 实验17
截图为测试代码运行结果
实验代码
-----------------------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;任务:安新一个新的int 7ch中断例程,实现通过逻辑扇区号对软盘进行读写
;参数:(ah)=功能号,0表示读,1表示写
; (dx)=要读写的扇区的逻辑区号(0~2879)
; es:bx指向存储读出或写入数据的内存区
;提示:用逻辑扇区号计算出面号、磁道号、扇区号后,调用int 13h中断例程进行实际的读写
;公式:逻辑扇区号=(面号*80+磁道...
实验代码
-----------------------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;任务:安新一个新的int 7ch中断例程,实现通过逻辑扇区号对软盘进行读写
;参数:(ah)=功能号,0表示读,1表示写
; (dx)=要读写的扇区的逻辑区号(0~2879)
; es:bx指向存储读出或写入数据的内存区
;提示:用逻辑扇区号计算出面号、磁道号、扇区号后,调用int 13h中断例程进行实际的读写
;公式:逻辑扇区号=(面号*80+磁道...
阅读全文 |
评论次数(0) |
浏览次数(777) |
所属类型(汇编实验)
[2013-08-06 22:44] 检测点17.1
“在int 16h中断例程中,一定有设置IF=1的指令。”这种说法对吗?
IF=0,使CPU处于关可屏蔽中断状态,拒绝响应外设的可屏蔽中断请求
IF=1,使CPU处于开可屏蔽中断状态,能够响应外设的可屏蔽中断请求
一般中断过程如下:
(1)获取中断类型码N
(2)标志寄存器入栈
(3)IF,TF置0
(4)CS,IP入栈
(5)(cs)=(N*4+2),(ip)=(N*4)
已知,int9中断是可屏蔽中断,
如果int16中断内部没有设置if=1这一步的话,if一直为0,拒绝响应外设可屏蔽中断请求,
这时,如果键盘缓冲区内无字符,且又有应用程序从缓冲区读字符的...
IF=0,使CPU处于关可屏蔽中断状态,拒绝响应外设的可屏蔽中断请求
IF=1,使CPU处于开可屏蔽中断状态,能够响应外设的可屏蔽中断请求
一般中断过程如下:
(1)获取中断类型码N
(2)标志寄存器入栈
(3)IF,TF置0
(4)CS,IP入栈
(5)(cs)=(N*4+2),(ip)=(N*4)
已知,int9中断是可屏蔽中断,
如果int16中断内部没有设置if=1这一步的话,if一直为0,拒绝响应外设可屏蔽中断请求,
这时,如果键盘缓冲区内无字符,且又有应用程序从缓冲区读字符的...
阅读全文 |
评论次数(0) |
浏览次数(770) |
所属类型(汇编作业)
[2013-08-04 20:29] 实验16
-------------------------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;实验16 安装一个新的int7ch中断例程
;实现一个子程序setscreen,为显示输出提供如下功能
;(1)清屏
;(2)设置前景色
;(3)设置背景色
;(4)向上滚动一行
;参数:(ah)传递功能号:
; 0表示清屏
; 1表示设置前景色
; 2表示设置背景色
; 3表示向上滚动一行
; (al)对...
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;实验16 安装一个新的int7ch中断例程
;实现一个子程序setscreen,为显示输出提供如下功能
;(1)清屏
;(2)设置前景色
;(3)设置背景色
;(4)向上滚动一行
;参数:(ah)传递功能号:
; 0表示清屏
; 1表示设置前景色
; 2表示设置背景色
; 3表示向上滚动一行
; (al)对...
阅读全文 |
评论次数(0) |
浏览次数(887) |
所属类型(汇编实验)
[2013-08-04 19:18] 检测点16.1~16.2
检测点16.1
-------------------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;将code段中a处的8个数据累加,结果存储到b处的叠字中
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
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
...
-------------------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;将code段中a处的8个数据累加,结果存储到b处的叠字中
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
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
...
阅读全文 |
评论次数(0) |
浏览次数(855) |
所属类型(汇编作业)
『 查看更多文章 』