鱼C论坛

 找回密码
 立即注册

操作系统自学笔记 20130911 ——基础补习2

热度 1已有 801 次阅读2013-9-11 14:50

         昨晚被耽误了,今儿下午半天没课,继续开搞!
         昨天看到了35页的尾部,后来今早看大神 ID:仰望天上的光 空间日志的时候发现一篇文章叫《我是一条内存》,看完了感觉很生动啊~  不偏题了,看书
 
OK,要是想指定内存地址的话,在C语言里面就用:数据大小 []的格式来定义
  这里的数据大小我们可以选择的有Byte word dword,自然之前的日志已经查好了分别表示的是8位,16位和32位。一个字节。一个字,和2个字。  (字节就是Byte,字是word,双字?就是double word,这我自己臆想的,应该对吧~)这里我觉得用英文记忆比用中文记忆更不容易混乱。。。有的时候我看着一个熟悉的汉字半天想不出来这玩意叫啥,囧
  下面就讲到地址的问题了,[]的地址可以使用常数可以使用寄存器。但是这里能够用于指定内存地址的寄存器只有4个。BX,BP,SI,DI。(我去,这几个叫啥来着。我回一下:BX,Byte Extend;BP:Byte Pointer;SI:忘了,靠;DI:Defination Index,哈哈~我说吧~Defination这个词读起来很装X的,很带感~检查下就是!!!错了!,base,不是Byte。怎么理解呢。这么记忆吧,Base不是基址么,他要的不就是内存地址么,这就好记忆了,下次不会错了。那个SI是source Index。源地址。下次我不会错了)
  结构讲完下面就是example了。 想把DX中的内容给AL,就用:
      MOV BX,DX 
     MOV AL,Byte[BX]
        但是咧~MOV指令有个规则可以用来简化这个指令~规则是:源数据和目的数据位数必须相同,1B对1B嘛,所以能写进AL的就只有BYTE了,因此,这里的BYTE可以省略。
 
        ADD指令。很简单啦,add就是+。
        CMP,如果是按书上比较的意思来说的话就是compare。OK,那么啥时候用?example:当if语句条件是a==3的时候,汇编要改成CMP a,3。
        JE指令。他是跳转指令,当条件满足的时候就会跳转~
        example:CMP AL,0    JE fin就是满足AL和0 相等的时候跳到fin里面去。
        INT是指的软件的中断指令。作者说目前不详细讲,就当函数调用。英文是interrupt.他说到了INT就提到了BIOS,BIOS的程序预先写在ROM里。
       想用INT去显示自己想要的文字的话就自然想到会和显卡有关系。INT0x10.
       下一个指令时HLT。。。HLT哦。。。停止CPU运作。但是进入的是待机状态。HLT~~~就是halt 的意思。。。。
       OK,在39页终于把注释讲完了,下面要回过头来去看总的程序了。
 
  好吧,是用C语言改写的最终程序的结尾。书上有,还是比较简单的。
  用makefile开发简化流程,这个我按照书上做了一遍,没啥。就不写笔记了。
  最终的结果都保存在了第二天的第五个文件夹,这下工具什么的都整理好了,很方便。~hAPPPYING~
  
 第二天的结束了,明儿开始的是进入32位模式并且导入C语言。算是正式开始了吧~加油吧~一直坚持下去~
  
  
    

路过

鸡蛋

鲜花
1

握手

雷人

刚表态过的朋友 (1 人)

发表评论 评论 (8 个评论)

回复 福禄娃娃 2013-9-12 09:49
坚持就是胜利,会写了makefile以后编译链接程序就方便多了。
回复 风萧水寒 2013-9-12 11:44
福禄娃娃: 坚持就是胜利,会写了makefile以后编译链接程序就方便多了。
恩恩~ 发现真的方便了很多很多。。。比起原来这里导到那里的,方便很多很多~哈哈哈哈~
回复 风萧水寒 2013-9-12 17:09
福禄娃娃: 坚持就是胜利,会写了makefile以后编译链接程序就方便多了。
刚刚看完今儿的内容才发现你的回复是多么重要。我又回去复习了makefile的基本操作。还有就是我之前貌似没理解你的意思,回复有些驴头不对马嘴,咳咳我只是说真个流程在makefile 的带领下变得简单了,最起码比ORANGE那本书这部分内容简单那。咳咳抱歉。。。~我琢磨着这本书结束后再去啃ORANGE那本书~~~~~~一起加油~
回复 福禄娃娃 2013-9-12 18:39
顺带推荐三本书,都是讲操作系统的。作者很牛B,Linus大神都是从书作者那里学习的。但是 塔嫩鲍姆的操作系统内核机制和Linux不同, 塔嫩鲍姆提倡微内核,内核只有基本功能,其他的程序都放在应用层, 塔嫩鲍姆的操作系统至今还在推广改进,他的建议不把操作系统内核做的很复杂,我觉得挺适合移动端的操作系统。
回复 福禄娃娃 2013-9-12 18:40
操作系统设计与实现(上册)(第3版)
现代操作系统(原书第3版)
操作系统:精髓与设计原理(原书第6版)
如果图书馆有借的就借,没有借的再考虑买吧,毕竟书贵质量还不好。机工出版社坑爹的很,很厚的书都是很薄的纸。
回复 福禄娃娃 2013-9-12 18:42
风萧水寒: 刚刚看完今儿的内容才发现你的回复是多么重要。我又回去复习了makefile的基本操作。还有就是我之前貌似没理解你的意思,回复有些驴头不对马嘴,咳咳我只是说真个 ...
Orange那本书我就看了一点点,谈不上帮忙,我俩互助吧。
回复 风萧水寒 2013-9-12 19:25
福禄娃娃: 操作系统设计与实现(上册)(第3版)
现代操作系统(原书第3版)
操作系统:精髓与设计原理(原书第6版)
如果图书馆有借的就借,没有借的再考虑买吧,毕竟书贵质量还不 ...
谢谢推荐,刚刚去图书馆搜了,都有可借的版本~
回复 风萧水寒 2013-9-13 00:09
福禄娃娃: Orange那本书我就看了一点点,谈不上帮忙,我俩互助吧。
好开心,那三本书除了第一本只有第二版外,其它所有的我全部在新浪爱问资料库找到了pdf版本~感觉大发,总之一步一步来,一本一本看

facelist

您需要登录后才可以评论 登录 | 立即注册

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-13 09:40

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

返回顶部