|
QB编程的相关知识-系统原理 |
|
| 来自: | 作者: |
| 按功能划分, 计算机的硬件包括输入、控制与处理(数值运算和逻辑运算)、存储和输出设备。其中, 控制和处理部分一般做在一起, 称中央处理单元(Central Process Unit, CPU);存储设备又分为内部存储器(简称内存, 又称主存)和外部存储器(如磁盘、磁带和光盘), 计算机内的“数” 计算机只认识 0 和 1 ,所以计算机使用的是二进制数。所谓二进制就是逢二进一。十进制中的2在二进制数中表示为10,即(2)10=(10)2 、(3)10=(11)2 、(4)10=(100)2 等等,其中的下标表示数的进制。由于大的二进制数太长,所以,人们又用16进制来表述计算机里的数,但计算机存储的依然是二进制数。十进制数有0~9十个数字符号,二进制数只有0和1两个数字符号,十六进制数有0~9、A~F十六个数字符号。对不同进制的书写,除了用上面所示的下标表示外,还有用尾部符号表示的,其中B为二进制数的符号,H为16进制数的符号,如110B即(110)2、9A3FH即(9A3F)16 ,尾部无这类符号的为十进制数。 其实,只要数的大小定了,不管用什么进制来表示,总是那个数,对一般用户而言管不了那么多,这些知识是我们这些伤脑筋学编程的人学的 位(Bit):二个进制中的一位数即一个位,只能是 0 或 1,如 (10100)2有5位。 字节(Byte):8个二进制位。你只需记住,英文状态下一个字母或数字占用一个字节。 字(Word):为两个字节。一个汉字用两个字节表示。 1K=1024Bytes 1M=1024K 1G=1024M 1T=1024G 计算机里用字节来作为最基本的存储单位。 CPU的指令系统是用位来表示的,我们经常听说64位32位16位就这个意思 电脑的启动过程: 向大家介绍一下从打开电源到出现Windows,计算机到底干了些什么工作。 系统启动过程简介 系统启动过程主要由一下几步组成(以硬盘启动为例): 1. 开机 :-) 2. BIOS 加电自检 ( Power On Self Test -- POST ) 内存地址为 0ffff:0000 3. 将硬盘第一个扇区 (0头0道1扇区, 也就是Boot Sector) 读入内存地址 0000:7c00 处. 4. 检查 (WORD) 0000:7dfe 是否等于 0xaa55, 若不等于 则转去尝试其他启动介质, 如果没有其他启动介质则显示 "No ROM BASIC" 然后死机. 5. 跳转到 0000:7c00 处执行 MBR 中的程序. 6. MBR 首先将自己复制到 0000:0600 处, 然后继续执行. 7. 在主分区表中搜索标志为活动的分区. 如果发现没有活动 分区或有不止一个活动分区, 则转停止. 8. 将活动分区的第一个扇区读入内存地址 0000:7c00 处. 9. 检查 (WORD) 0000:7dfe 是否等于 0xaa55, 若不等于则 显示 "Missing Operating System" 然后停止, 或尝试 软盘启动. 10. 跳转到 0000:7c00 处继续执行特定系统的启动程序. 11. 启动系统 ... 王江民的逻辑锁,就是改写了主引导区,中了逻辑锁,不光是无法用硬盘启动,而且,软盘、光盘都无法启动!实际上这是利用了微软win98以前的一个BUG,(nt系统没有这个BUG) 最先用这个方法的是DOS时代的一个叫“猴子”的病毒,让这个BUG大出名的是王江民逻辑锁! 主引导区是如此重要,在里面任意改动都有可能造成系统无法启动! MBR是关键的东西,它就是一段代码,通过检查DPT分区信息引导系统跳转至DBR;它就象是一根火柴点亮整个系统,MBR里的内容是在操作系统前载入的,你在这里可以做很多想做的事情,如果你编程水平足够厉害的话! 所以MBR是很重要的扇区,有些病毒就喜欢攻击他,如果被破坏,你的电脑就无法启动 因此很多硬盘工具可以保存MBR,如果你想用QB保存,请看我在本论坛写帖子,当然你也可以用QB来改写MBR,这个在本论坛不讨论! 所有这些知识,均来自于网络,为了大家能更好的学习,我把他们编排了一下,在此我感谢提供资料的这些网站! 系统原理篇 按功能划分, 计算机的硬件包括输入、控制与处理(数值运算和逻辑运算)、存储和输出设备。其中, 控制和处理部分一般做在一起, 称中央处理单元(Central Process Unit, CPU);存储设备又分为内部存储器(简称内存, 又称主存)和外部存储器(如磁盘、磁带和光盘), 计算机内的“数” 计算机只认识 0 和 1 ,所以计算机使用的是二进制数。所谓二进制就是逢二进一。十进制中的2在二进制数中表示为10,即(2)10=(10)2 、(3)10=(11)2 、(4)10=(100)2 等等,其中的下标表示数的进制。由于大的二进制数太长,所以,人们又用16进制来表述计算机里的数,但计算机存储的依然是二进制数。十进制数有0~9十个数字符号,二进制数只有0和1两个数字符号,十六进制数有0~9、A~F十六个数字符号。对不同进制的书写,除了用上面所示的下标表示外,还有用尾部符号表示的,其中B为二进制数的符号,H为16进制数的符号,如110B即(110)2、9A3FH即(9A3F)16 ,尾部无这类符号的为十进制数。 其实,只要数的大小定了,不管用什么进制来表示,总是那个数,对一般用户而言管不了那么多,这些知识是我们这些伤脑筋学编程的人学的 位(Bit):二个进制中的一位数即一个位,只能是 0 或 1,如 (10100)2有5位。 字节(Byte):8个二进制位。你只需记住,英文状态下一个字母或数字占用一个字节。 字(Word):为两个字节。一个汉字用两个字节表示。 1K=1024Bytes 1M=1024K 1G=1024M 1T=1024G 计算机里用字节来作为最基本的存储单位。 CPU的指令系统是用位来表示的,我们经常听说64位32位16位就这个意思 电脑的启动过程: 向大家介绍一下从打开电源到出现Windows,计算机到底干了些什么工作。 系统启动过程简介 系统启动过程主要由一下几步组成(以硬盘启动为例): 1. 开机 :-) 2. BIOS 加电自检 ( Power On Self Test -- POST ) 内存地址为 0ffff:0000 3. 将硬盘第一个扇区 (0头0道1扇区, 也就是Boot Sector) 读入内存地址 0000:7c00 处. 4. 检查 (WORD) 0000:7dfe 是否等于 0xaa55, 若不等于 则转去尝试其他启动介质, 如果没有其他启动介质则显示 "No ROM BASIC" 然后死机. 5. 跳转到 0000:7c00 处执行 MBR 中的程序. 6. MBR 首先将自己复制到 0000:0600 处, 然后继续执行. 7. 在主分区表中搜索标志为活动的分区. 如果发现没有活动 分区或有不止一个活动分区, 则转停止. 8. 将活动分区的第一个扇区读入内存地址 0000:7c00 处. 9. 检查 (WORD) 0000:7dfe 是否等于 0xaa55, 若不等于则 显示 "Missing Operating System" 然后停止, 或尝试 软盘启动. 10. 跳转到 0000:7c00 处继续执行特定系统的启动程序. 11. 启动系统 ... 王江民的逻辑锁,就是改写了主引导区,中了逻辑锁,不光是无法用硬盘启动,而且,软盘、光盘都无法启动!实际上这是利用了微软win98以前的一个BUG,(nt系统没有这个BUG) 最先用这个方法的是DOS时代的一个叫“猴子”的病毒,让这个BUG大出名的是王江民逻辑锁! 主引导区是如此重要,在里面任意改动都有可能造成系统无法启动! MBR是关键的东西,它就是一段代码,通过检查DPT分区信息引导系统跳转至DBR;它就象是一根火柴点亮整个系统,MBR里的内容是在操作系统前载入的,你在这里可以做很多想做的事情,如果你编程水平足够厉害的话! 所以MBR是很重要的扇区,有些病毒就喜欢攻击他,如果被破坏,你的电脑就无法启动 因此很多硬盘工具可以保存MBR,如果你想用QB保存,请看我在本论坛写帖子,当然你也可以用QB来改写MBR,这个在本论坛不讨论! 所有这些知识,绝大部分来自于网络,为了大家能更好的学习,我把他们编排了一下,加入了我自己的实践和理解,在此我感谢提供资料的这些网站! 如果大家看了这个帖子有什么问题和感想要回贴的,对不起了,这个帖子我锁了,无法回帖的,因为怕有人乱回无意义的垃圾帖子,从而影响大家的学习! |
|