摘要: 中断各种多,中断种类很多,13h是有关软盘硬盘读写的。13h中断又分为很多模式,不,应该叫包含很多更能函数,由ah来选择,如ah=00h是复位磁盘(不懂),此时dl选择复位那个磁盘。我用到了读软盘内容,是ah=02h。此时我需要设置寄存器不少:al是要读的扇区数,ch是磁道号,cl是扇区号,dh是磁头号,dl是驱动器号读出的数据存哪呢,由es:bx来记录首地址。就这些把,还是欢迎指正,指导,呵呵 。 阅读全文
posted @ 2012-04-07 21:21 金国梁 阅读(474) 评论(0) 推荐(0) 编辑
摘要: int 10h 是16号中断。作用是设置显示器显示相关的设置,来显示要显示的东西,如字符模式,字符串模式,像素模式中断我刚刚了解到原来就是当我调用某个中断,如int 10h。cpu自己就会去操作各种寄存器中的值,根据那些值来作一些操作。所以我们在调用之前就要把相应的设置提前放到相应的寄存器里边。ah 用来选择是什么模式,00h是vedio模式,01h是字符模式,16h是写字符串模式我用到了16号中断的写字符串模式,这一模式是把es:bp所指向的字符串输出,长度存在cx里,bh设置页,bl设置颜色,dh设置行,dl设置列。al设置写字符串模式的字模式(不了解,以后再补吧)。又用到了滚屏的函数(模 阅读全文
posted @ 2012-04-07 15:37 金国梁 阅读(694) 评论(0) 推荐(0) 编辑
摘要: 首先看组成:1.引导扇区,2.fat表1,3.fat表2,4.数据区引导区:放引导代码的,包括了一些文件系统的信息,包括:卷标,根目录文件最大多少,文件系统类型,磁头数等等。最后要以0xAA55结束。fat表有很多fat项组成,每项代表了一个文件所占用的下一个簇。也对应了一个簇。如第二项对应第二个簇,但它的值指向文件占用的下一个簇。另外,如果fat项值>=0xff8则表示文件结束。数据区:又分为根目录区和其他的。我们存在根目录里的文件会以32字节来保存它的信息,不包括内容。其中有首簇位置。由此我们知道:运找一个文件的步骤,从根目录里找到文件名,根据首簇位置找到文件内容,读完一个簇,查看f 阅读全文
posted @ 2012-04-06 16:51 金国梁 阅读(398) 评论(0) 推荐(0) 编辑
摘要: 用到了xxd,了解了一下:xxd用来把文件或标准输入的文件转化成16进制或者二进制(-d参数)-u 用大写显示,默认用小写-a 将全是0的行用*表示-g num 以几个字节为一组,如果是16进制就是两位数字,如果2进制8位-c num 一行显示几组-s num 要显示的开始地址-l num 要显示的共显示多少字节如:xdd -u -g 1 -c 10 -s 0x2600 -l 10 x.img显示:0002600:52 49 56 45 52 20 20 20 54 58RIVERTX只显示了一行,因为一行显示10个字节,长度位十字节。行首是每行的起始地址最后右半部分显示的是对应asc码的字符 阅读全文
posted @ 2012-04-06 12:58 金国梁 阅读(633) 评论(0) 推荐(0) 编辑
摘要: 文件系统是个重要的概念,我了解了一下。文件系统是什么,它是一个数据结构。文件系统有什么用,它用来组织文件如何存储在存储器上,对于文件的读写,存储都会有影响。如:会影响读写速度,会影响文件的大小,文件名字的长度,文件的大小,分区的大小。文件系统都有哪些:他多了,windows上一般是fat32,ntfs,exfat。linux/unix就多了,ext2,ext3,ext4等等还有个raw文件系统,我的理解就是没有文件系统,因为当你没格式化,格式化中途停止,或者有坏道什么的,有病毒破坏是产生。只是些表面的理解,还有待以后更深入的理解,以后再来补充吧。 阅读全文
posted @ 2012-04-06 11:52 金国梁 阅读(147) 评论(0) 推荐(0) 编辑
摘要: today,I have some improvement.I learn a lot of the assembly language and the Protected Mode. 阅读全文
posted @ 2012-03-31 21:38 金国梁 阅读(88) 评论(0) 推荐(0) 编辑