问题:根据书上的代码,对硬盘0磁道1扇区读一个扇区的数据到显存中,显示读写
不过可惜会出错......不知道是不是哪里错了,还是对硬盘读写的方式错了
*******************************************
assume cs:code
code segment
start: mov ax,0b800h
mov es,ax
mov bx,0 ;es:bx 指向将写入磁盘的数据的内存区
mov al,1 ;写入的扇区数
mov ch,0 ;磁道号,从0开始
mov cl,1 ;扇区号 从1开始
mov dl,80h ;驱...
- [tomato] 正确。 06/15 15:16
- [zhubowen] 文章修改过了! 没问题 05/05 16:24
- [tomato] 输不出来那就算没有完成这道题吧!不妨找到问题的原因,解决了不就出来了? 05/04 14:59
- [zhubowen] 行值列值按书上的输不出来,我也不知道为什么,有输出但不是welcome to masm ! 所以我 04/30 18:14
- [tomato] 子程序调用之前的行值列值和颜色值在博主的子程序中并没有涉及,博主的程序有些不符合题意,博主再看看喽! 04/30 11:15
- [zhubowen] 说的确实不是很完善!多谢指教! 04/29 18:54
- [游客] 这个题目的分析中,一定要明确,复制的内存中的数据而不是程序中的源代码,再有就是,jmp是基于偏移量的 04/29 09:46
- [zhubowen] 谢谢 03/08 12:22
- [crazyman] 溢出??数据溢出的时候,会触发中断,调用中断例程来显示提示信息 ,然后,就终止程序啦。 可以看看《 03/06 20:46
[2009-10-12 18:21] 汇编第17章的问题?
阅读全文 |
评论次数(0) |
浏览次数(431) |
所属类型(默认类型)
[2009-10-10 18:56] 汇编写的一个简单的英文编辑(只写了删除和换行)
这个程序个人觉得写的很乱,可能会看的有点晕,所以希望得到指点
***************************************************
***************************************************
;ax:主要保存相乘运算后的结果,al:用来保存读取的ASCII码,ah:用来保存读取的扫描码
;bx:主要保存行号
;cx:主要保存循环次数,cl:暂存al的值
;di:主要保存要输入显存缓冲区的偏移地址,si:主要保存对某行的偏移
assume cs:code
code segment
st...
***************************************************
***************************************************
;ax:主要保存相乘运算后的结果,al:用来保存读取的ASCII码,ah:用来保存读取的扫描码
;bx:主要保存行号
;cx:主要保存循环次数,cl:暂存al的值
;di:主要保存要输入显存缓冲区的偏移地址,si:主要保存对某行的偏移
assume cs:code
code segment
st...
阅读全文 |
评论次数(0) |
浏览次数(683) |
所属类型(汇编作业)
[2009-06-15 12:02] 试验11
assume cs:code
data segment
db "Beginner's All-purpose Symbolic Instruction Code.",0
data ends
code segment
begin: mov ax,data
mov ds,ax
mov si,0
call letterc
mov ax,4c00h
int 21h
letterc: push ax
push bx
push cx
push dx
push si
push di
s: mov cl,[si]
mov ch,0
jcxz b ...
data segment
db "Beginner's All-purpose Symbolic Instruction Code.",0
data ends
code segment
begin: mov ax,data
mov ds,ax
mov si,0
call letterc
mov ax,4c00h
int 21h
letterc: push ax
push bx
push cx
push dx
push si
push di
s: mov cl,[si]
mov ch,0
jcxz b ...
阅读全文 |
评论次数(1) |
浏览次数(561) |
所属类型(汇编作业)
[2009-05-20 16:04] 迷宫课程设计【c语言】
1.输入m,n的值,m,n都大于3小于10【即迷宫二维数组的维数】;
2.初始化该二位数组;
#include<stdio.h>
#define maxn 10
#define maxmn 10
int mazepath(int maze[][maxn],int m,int n)
{
int stack[maxmn][3];
int mov[8][2]={{-1,0},{-1,1},{0,1},{1,1},{1,0},{1,-1},{0,-1},{-1,-1}};
int p,i,j,k,g,h,top=0;
maze[1][1]=2;
stack[0][0]=...
2.初始化该二位数组;
#include<stdio.h>
#define maxn 10
#define maxmn 10
int mazepath(int maze[][maxn],int m,int n)
{
int stack[maxmn][3];
int mov[8][2]={{-1,0},{-1,1},{0,1},{1,1},{1,0},{1,-1},{0,-1},{-1,-1}};
int p,i,j,k,g,h,top=0;
maze[1][1]=2;
stack[0][0]=...
阅读全文 |
评论次数(0) |
浏览次数(488) |
所属类型(默认类型)
[2009-04-29 19:08] 实验10-1【没用堆栈】
我没有用到堆栈!也没用cl的值!
不过还是做出来了!
不知道有没有犯规啊!!!!!
assume cs:code,ds:data
data segment
db 'Welcome to masm!',0
data ends
code segment
start: mov dh,07h;
mov dl,28h;
mov cl,02h;
mov ax,data
mov ds,ax
mov si,0
mo...
不过还是做出来了!
不知道有没有犯规啊!!!!!
assume cs:code,ds:data
data segment
db 'Welcome to masm!',0
data ends
code segment
start: mov dh,07h;
mov dl,28h;
mov cl,02h;
mov ax,data
mov ds,ax
mov si,0
mo...
阅读全文 |
评论次数(4) |
浏览次数(593) |
所属类型(汇编作业)
[2009-04-27 18:19] 实验8【花了我几天时间才搞懂】
我来浅谈一下!我就说一下我觉得我没搞懂的地方。
希望可以帮助你!
首先:
0B7F:0016 EBF0 JMP 0008
0B7F:0018 B80000 MOV AX,0000
1.里面ebf0怎么来的?可以看附注3,ai-aj 而ai=0008,aj=0018
相减后为f0为-10h
2.0008是怎么来的?书上说是ip+(ai-aj),而此时的ip是多少?我一直以为是0016,其实是0018
3.上面了解了
0B7F:0020 EBF6 JMP 0018
这条语句也就差不多了,是一样理解的...
希望可以帮助你!
首先:
0B7F:0016 EBF0 JMP 0008
0B7F:0018 B80000 MOV AX,0000
1.里面ebf0怎么来的?可以看附注3,ai-aj 而ai=0008,aj=0018
相减后为f0为-10h
2.0008是怎么来的?书上说是ip+(ai-aj),而此时的ip是多少?我一直以为是0016,其实是0018
3.上面了解了
0B7F:0020 EBF6 JMP 0018
这条语句也就差不多了,是一样理解的...
阅读全文 |
评论次数(2) |
浏览次数(651) |
所属类型(汇编作业)
[2009-03-05 21:16] 汇编小问题!!(急)
在汇编语言中怎么判断溢出问题!!
我是汇编初学者,
老师说的不是很清楚所以来这!
望有高人指点
呵呵...
我是汇编初学者,
老师说的不是很清楚所以来这!
望有高人指点
呵呵...
阅读全文 |
评论次数(2) |
浏览次数(648) |
所属类型(默认类型)