自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 资源 (6)
  • 收藏
  • 关注

原创 python bash escape(转义)

在python中调用bash接口,一般使用os.system, commands.getstatusoutput或者os.popen如果command中遇到$,  !, " 等特殊字符需要手动转义。且不同语句之间最后使用分号(;)分隔。

2012-07-05 16:09:22 2558

原创 vba range select 方法无效

vba 中在range使用select方法的时,需要先激活range所在的sheet,如果sheet没有被激活,使用range.select方法会痴线1004, 方法无效的错误。激活sheet,可以使用Activate方法。

2012-06-26 23:41:18 10415

原创 gdb 学习资料

1 Debugging with gdb:  http://sourceware.org/gdb/current/onlinedocs/gdb/

2012-02-23 16:17:11 615

转载 配置GDB以支持查看stl容器数据

原帖:http://blog.chinaunix.net/space.php?uid=20594049&do=blog&id=16201391. 下载 http://www.yolinux.com/TUTORIALS/src/dbinit_stl_views-1.03.txt 2. #cat dbinit_stl_views-1.03.txt >> ~/.gdbinit

2012-02-23 13:25:25 533

原创 bash 遍历字符串

<br />#/bin/bashnum="/home/abc/"for ((a=0; a < ${#num}; ++a))do echo ${num:$a:1}done<br />备注: 同事问我这个问题,google了没有找到实用信息,解决后随手发上来。

2011-05-12 14:11:00 1229

原创 stanford编程方法——习题答案(the art and science of java)——chapter05

<br /> <br />Chapter 05 Methods <br />Review questions <br />------------------------------------------------------------------------------- <br />1. Explain in your own words the difference between a method and a program. <br />Answer: <br /

2011-05-01 19:44:00 5784 3

原创 stanford编程方法——习题答案(the art and science of java)——chapter04

  Chapter 04 Statement FormsReview questions-------------------------------------------------------------------------------1. Is the construction    17;a legal statement in Java? Is it useful?Answer:    legal statement but not userful----------------------

2011-05-01 16:13:00 5162

原创 stanford编程方法——习题答案(the art and science of java)——chapter07

<br />    Chapter 07    The Object Memory mode<br />Review questions<br />-------------------------------------------------------------------------------<br />1. Define the following terms: bit, byte, and word.<br />Answer:<br />    bit:    can b

2011-05-01 11:44:00 3703 1

原创 编程工具的网站链接(持续更新中)

<br />1 doxgen安装主页<br />http://www.stack.nl/~dimitri/doxygen/download.html<br />2 graphivz dot (一款画软件流程图,数据流图使用的图形软件)下载主页<br />http://www.graphviz.org/Download..php<br />3 vim 官方网站<br />http://www.vim.org/<br /> <br /> <br />待续。。。

2011-04-29 16:17:00 753

原创 vim remap F5 CTRL-F7 F7 F12

<br />如题,定义F5为编译执行,F7为编译,Ctrl-F7为运行,定义F12为调试,因为F11在ubuntu下的终端另有它用。<br />" remap F5 to complie the c++ programfunc CompileRun()exec "w"if &filetype == 'c'exec "!rm %<"exec "!gcc % -g -o %<"exec "!./%<"elseif &filetype == 'cpp' || &filetype ==

2011-04-22 19:24:00 1450

原创 类的成员函数中可以直接访问本类形参的私有变量

<br />刚才在看《c++沉思录》, 对下面这段代码产生疑问:<br />class VehicelSurrogate {public: //.... VehicleSurrogate(const VehicelSurrogate & ); //....private: Vehicle * vp;};VehicelSurrogate::VehicelSurrogate (const VehicelSu

2011-04-15 09:27:00 2703

原创 选择csdn发技术博客的理由

<br />我想想了还是选择csdn作为我发表技术博客的地方。理由如下:<br />第一:我第一个认识的技术网站就是csdn,那是侯我是一个小白中的小白。<br />第二:在百度搜索技术文章,csdn的出现的次数最多。

2011-04-07 21:37:00 708

原创 stanford编程方法——习题答案(the art and science of java)——chapter03

<br />-------------------------------------------------------------------------------<br /> Chapter 03 Expressions<br />Review questions<br />-------------------------------------------------------------------------------<br />1 What are the two attributes

2011-03-12 23:31:00 3763 6

原创 stl算法中for_each的调用函数要注意的问题:

昨天我得同事遇到一个问题,问题抽象如下://####################################################################### //# Author: huer0625 //# Created Time: 2011-3-7 18:02:35 //# File Name: for_each.cpp //# Description: //##########################################################

2011-03-08 10:43:00 1772 2

原创 linux0.11使用nasm改写汇编部分

<br />之前在博客上说要把linux0.11后续的代码发布出来,但是由于没有通过最后的测试一直没有发。现在依旧没有通过最后的测试,不过我决定先把把它们发上来。我已经上传一份最后一天的文件到我的资源。如果有谁需要的全部的代码,从第一天到最后一天请发邮件给我。我得邮箱地址:shaohua20051231@163.com。

2011-01-27 10:07:00 1159 1

转载 The abstract of

<br />I spend one month to read it and cost two months to complete writing the abstract of the this book. This is the first book I write  the abstract. I feel it's a best start. Haa<br />Chapter 1. Why Shell Programming?<br />The chapter answer why y

2010-12-03 14:07:00 2626

原创 The abstract of (chapter01 to chapter03)

<br />Chapter 1. Why Shell Programming?<br />The chapter answer why you need to grasp shell programming and answer when not to use shell scripts.<br /><br />--------------------------------------------------------------<br />Chapter 2. Starting Off W

2010-09-28 10:28:00 732

原创 编译器错误:/tmp/ccyOgqYQ.o:(.eh_frame+0x12): undefined reference to `__gxx_personality_v0' collect2: ld returned 1 exit status

<br />今天下午在编写一个c程序文件文件名:test.cpp, 文件内容见附录。使用gcc编译的时候出现/tmp/ccyOgqYQ.o:(.eh_frame+0x12): undefined reference to `__gxx_personality_v0' collect2: ld returned 1 exit status的错误。采用c++编译问题消失。在这次这个错误是由于文件名后缀引起的。我把test.cpp改为test.c后,然后再次使用gcc编译,通过。具体的原因,有待进一步的研究。<b

2010-08-10 18:00:00 18549 5

原创 集合论32元素以内划分为三个以下的子集(c实现版),没有重复了

#include #define NR_HP 3#define NR_KIND ((unsigned long)(0xffffffff>>(32-NR_HP)))#define NR_DIM 3static  get_nr(unsigned long u32);static void print_hp(unsigned long u32[NR_DIM]){ int i,j, k; printf("{"); for (i=0; i   k=0;  for (j=0; j   (1  if (get_nr(u3

2010-06-01 21:36:00 883

原创 把一个具有5个元素的集合划分成三个子集(允许重复),c实现版本

<br />#include <stdio.h><br />static void print_bit_u5(unsigned char u5[3])<br />{<br /> int i,j, k;<br /> for (i=0; i < 3; i++){<br />  (i==0)? printf("{"):0;<br />  k=0;<br />  for (j=0; j<5; j++) <br />   (1<<j)&u5[i]?printf("%cH%d", k++==0? '{': ',',j+

2010-06-01 18:29:00 1333

原创 数理逻辑,打印8个命题的所有组合(用c语言实现)

数理逻辑,打印8个命题的所有组合(用c语言实现)

2010-06-01 16:55:00 746

原创 如何让vm里的系统上网?

    如果你的机子上xp的系统在上面安装了vm虚拟机。现在你在虚拟机里装了一个又装了其它的一个系统。如果你想你的虚拟机的系统也可以上网,你可以这么做。首先,vm->setting->ethernet->NAT,然后你到你的虚拟机把ip调成自动获得即可。

2010-05-16 19:27:00 483

原创 如何使用编程的方法--创建1.44兆软盘镜像的几种方法。。。(之二 汇编)

第二种情况:我们可以用汇编语言。原理跟前面的一样。在这不再赘述。nasm实现版times 1474560 - ($ - $$) db 0 将上面的文件保存为makeboot.asm然后编译 nasm -f bin makeboot.asm -o fkix.img 即可。以下是在我的机子上的实际操作。C:/DOCUME~1/ADMINI~1>vim makeboot.as

2010-04-30 22:15:00 1075

原创 如何使用编程的方法--创建1.44兆软盘镜像的几种方法。。。(之一 C语言法)

首先先分析以下一块1.44兆软盘镜像占多少个字节。我查到的数据是1474560。不过,我始终不明白这是怎么算出来的?如果有谁知道,请指教。其实一个软盘镜像就是一个1.44兆的文件。只要你有办法生成一个1.44兆的文件。那么一个软盘镜像就算完成。原理懂了。接下来,我们来实现它吧。第一种方法:c语言法#include int main(){ long i; for (i=0; i  pri

2010-04-30 21:58:00 1540

原创 set_base 和 set_limitC语言实现版

在重建系统的时候发现linux-0.11原来这两个宏函数经常出错,迫不得已。改写了这两个函数。extern inline void set_base(void  * addr, unsigned long base){ *((char *)addr+2) = (short) base; base >>= 16; *((char *)addr+4) = (char) base; base >>= 8

2010-04-30 21:52:00 1056

原创 分享《C语言教程》Al.Kelley Ira Pohl 著 一个有趣的例子吧。。。

c编译器把函数名本身当做指针看待  #include void f(void);void g(void);void h(void);int main(void){ (*(*f))(); return 0;}void f(void){ printf("hello from f()./n"); (*(*(*(*(*(*(*(*g))))))))();}void g(void

2010-04-30 21:33:00 1044

原创 用nasm语言重新实现linux-0.11 键盘驱动程序(us)(博古以通今) (开发版,未精简)

;文件名:followking/kernel/chr_drv/keyboard.s;本文件改写linux-0.11/kernel/chr_drv/keyboard.s;目的是为了体验整个系统构建的过程。;作者:hk0625;开始时间: 2010年04月25日星期日 12:57 ;完成时间: 2010年04月25日星期日 22:48(完成);最后修改时间: 2010年04月26日星期一 21:18;

2010-04-26 22:38:00 1612 6

原创 8259芯片的初始化-在重现linux-0.11遇到的问题 (博古以通今)

/*文件名:followking/include/asm/io.h*本文件改写linux-0.11/inlcude/asm/io.h,目的是为了体验整个系统构建的过程。*作者:hk0625*开始时间: 2010年03月28号星期天 15:22*完成时间: 2010年03月28号星期天 15:42(完成)*最后修改时间: 2010年03月29号星期一 11:50*调试完成时间: 2010年04月09

2010-04-25 18:59:00 1154

原创 用nasm语言重新实现linux-0.11 asm.s(博古以通今)

;文件名:followking/kernel/asm.s;本文件改写linux-0.11/kernel/asm.s,目的是为了体验整个系统构建的过程。;作者:hk0625;开始时间: 2010年03月26号星期五 18:47 ;完成时间: 2010年03月31号星期三 15:53(完成);最后修改时间: 2010年04月20日星期二 23:51:;地点: 北京化工大学郁夫图书馆文法阅览室小圆桌;E

2010-04-25 18:57:00 1088

原创 Makefile 文件

AS86 =nasm LD86 =ld -s AS =asLD =ldLDFLAGS =-x -MCC =gcc CFLAGS =-Wall -g  -nostdinc -Iinclude  -O -fno-builtin CPP =gcc -E -nostdinc -IincludeARCHIVES=mm/mm.o kernel/kernel.o fs/fs.oLIBS =lib

2010-04-25 18:54:00 564

原创 给出一个printk函数的实现版本(用于早期调试用)

它有三部分组成。vsprintf,printk,debug.s中mywrite函数。其中vsprintf函数是linux实现我调试后拿来使用,对这个函数的调试可用gdb来调。呵呵,mywrite则是我自己写的。呵呵,改了很多次了。我把所有原件不加修改的发上来,以期可以看到系统开发的真实过程吧。/*文件名:followking/include/stdarg.h*本文件改写linux-0.11

2010-04-25 18:44:00 1496

原创 nasm重写linux-0.11 head.s (博古以通今)

;文件名:followking/boot/head.s;本文件改写linux-0.11/boot/head.s,目的是为了体验整个系统构建的过程。;我是看着赵炯《Linux内核0.11完全注释》编写的。不过,我是编写代码,有疑问再看。;我用的nasm的语法格式。我想写一个操作系统,现在觉得最简单的方式莫过于;先把前辈的实现的东西重新实现一遍。等到对这个问题有更深刻认识的时候,;再重新思考,写出有自

2010-04-25 18:39:00 2420

原创 用nasm语言重新实现linux-0.11 setup.s (博古以通今)

;文件名:followking/boot/setup.s;本文件改写linux-0.11/boot/setup.s,目的是为了体验整个系统构建的过程。;我是看着赵炯《Linux内核0.11完全注释》编写的。不过,我是编写代码,有疑问再看。;我用的nasm的语法格式。我想写一个操作系统,现在觉得最简单的方式莫过于;先把前辈的实现的东西重新实现一遍。等到对这个问题有更深刻认识的时候,;再重新思考,写出

2010-04-25 18:37:00 1529 2

原创 用nasm语言重新实现linux-0.11 bootsect.s(博古以通今)

;这个程序是改写linux的bootsect.s。我用的nasm的语法格式。昨天刚学,今天学完。所以想马上运用一下。;我想写一个操作系统,现在觉得最简单的方式莫过于先把前辈的实现的东西重新实现一遍。等到对这个;问题有更深刻认识的时候,再重新思考,写出有自己特色的系统。;作者:hk0625;开始时间: 2010年03月18日星期四 21:00 ;完成时间: 2010年03月19日星期五 20:55(

2010-04-25 18:31:00 2929 4

原创 呵呵,现在比较忙

   现在每天都在改写系统,还有做毕业论文。等这段忙完了。再跟大家分享经验。呵呵

2010-03-21 18:47:00 566

原创 有关王爽课程设计二的源代码。呵呵,我可是花了一星期才做出来的。

;名称:boot04.asm;作用:把"Hello, the OS of world!"写在屏幕的第0行第0列并且当键盘发生输入时,; 进入菜单选择画面后停止不动进入死循环。不过这次我并不想把这个程序代码写入; 软盘的0面0道1扇区而是把它安装在0面0道2扇区以后,所以为了能够运行它。; 首先,我需要写一段引导代码且把这段代码安装在软盘的软盘的0面0道1扇区。; 呵呵,行动!;; 由于需要把这段代

2010-03-19 14:52:00 1377 1

linux0.11采用nasm重写汇编代码部分

这是我在大学阶段在学习编写操作系统时遗留下来的代码。之前在博客说要公布,但是由于没有通过最后的测试一直没有公布出来。现在先公布出来以后有空我会 在完善。我讨厌csdn上传的有界限,所以只能把我代码中最后一天发上来。如果你们想要我前期的代码,请发邮件:shaohua20051231@163.com给我。

2011-01-27

The Fundamentals Linux Programming by Example

(美)Arnold Robbins著, 是一本非常不错的linux c书籍。注重实战。值得一看。

2010-09-27

《unix操作系统设计》(有书签,中文版)

这本书对于理解linux早期版本的算法很有益处,也可以作为自己编写操作系统的主要参考书。当年linus就是根据这本书编出早期的linux版本。你看完这本书后,再看linux早期代码会发现很容易理解。呵呵,这些都是我的亲身感受。

2010-05-08

汇编语言 王爽著 清华大学出版社

汇编语言 王爽著 清华大学出版社 这是一本不错的汇编语言教程,适合汇编的初学者。本书是有关8086编程的。想学习汇编的朋友,推荐看一看

2010-02-20

计算机组成原理课件(唐朔飞)

唐朔飞编写的计算机组成原理是一部很不错的教科书,这次上传的是它的配套课件,希望需要学习的同学有用。

2009-11-28

计算机组成原理课后解答(唐朔飞)

计算机组成原理课后解答(唐朔飞) 第一章 作者:佚名 来源:网络 1. 什么是计算机系统、计算机硬件和计算机软件?硬件和软件哪个更重要? 解:P3 计算机系统——计算机硬件、软件和数据通信设备的物理或逻辑的综合体。 计算机硬件——计算机的物理实体。 计算机软件——计算机运行所需的程序及相关资料。 硬件和软件在计算机系统中相互依存,缺一不可,因此同样重要。 5. 冯诺依曼计算机的特点是什么? 解:冯氏计算机的特点是:P9 由运算器、控制器、存储器、输入设备、输出设备五大部件组成; 指令和数据以同一形式(二进制形式)存于存储器中; 指令由操作码、地址码两大部分组成; 指令在存储器中顺序存放,通常自动顺序取出执行; 以运算器为中心(原始冯氏机)。 7. 解释下列概念: 主机、CPU、主存、存储单元、存储元件、存储基元、存储元、存储字、存储字长、存储容量、机器字长、指令字长。 解:P10 主机——是计算机硬件的主体部分,由CPU+MM(主存或内存)组成; CPU——中央处理器(机),是计算机硬件的核心部件,由运算器+控制器组成;(早期的运、控不在同一芯片上) 主存——计算机中存放正在运行的程序和数据的存储器,为计算机的主要工作存储器,可随机存取;由存储体、各种逻辑部件及控制电路组成。 存储单元——可存放一个机器字并具有特定存储地址的存储单位; 存储元件——存储一位二进制信息的物理元件,是存储器中最小的存储单位,又叫存储基元或存储元,不能单独存取; 存储字——一个存储单元所存二进制代码的逻辑单位; 存储字长——一个存储单元所存二进制代码的位数; 存储容量——存储器中可存二进制代码的总量;(通常主、辅存容量分开描述) 机器字长——CPU能同时处理的数据位数; 指令字长——一条指令的二进制代码位数; 讲评:一种不确切的答法: CPU与MM合称主机; 运算器与控制器合称CPU。 这两个概念应从结构角度解释较确切。 8. 解释下列英文缩写的中文含义: CPU、PC、IR、CU、ALU、ACC、MQ、X、MAR、MDR、I/O、MIPS、CPI、FLOPS 解:全面的回答应分英文全称、中文名、中文解释三部分。 CPU——Central Processing Unit,中央处理机(器),见7题; PC——Program Counter,程序计数器,存放当前欲执行指令的地址,并可自动计数形成下一条指令地址的计数器; IR——Instruction Register, 指令寄存器,存放当前正在执行的指令的寄存器; CU——Control Unit,控制单元(部件),控制器中产生微操作命令序列的部件,为控制器的核心部件; ALU——Arithmetic Logic Unit,算术逻辑运算单元,运算器中完成算术逻辑运算的逻辑部件; ACC——Accumulator,累加器,运算器中运算前存放操作数、运算后存放运算结果的寄存器; MQ——Multiplier-Quotient Register,乘商寄存器,乘法运算时存放乘数、除法时存放商的寄存器。 X——此字母没有专指的缩写含义,可以用作任一部件名,在此表示操作数寄存器,即运算器中工作寄存器之一,用来存放操作数; MAR——Memory Address Register,存储器地址寄存器,内存中用来存放欲访问存储单元地址的寄存器; MDR——Memory Data Register,存储器数据缓冲寄存器,主存中用来存放从某单元读出、或写入某存储单元数据的寄存器; I/O——Input/Output equipment,输入/输出设备,为输入设备和输出设备的总称,用于计算机内部和外界信息的转换与传送; MIPS——Million Instruction Per Second,每秒执行百万条指令数,为计算机运算速度指标的一种计量单位; 10. 指令和数据都存于存储器中,计算机如何区分它们? 解:计算机硬件主要通过不同的时间段来区分指令和数据,即:取指周期(或取指微程序)取出的既为指令,执行周期(或相应微程序)取出的既为数据。 另外也可通过地址来源区分,从PC指出的存储单元取出的是指令,由指令地址码部分提供操作数地址。 问题讨论: × 由控制器分析是指令还是数据;

2009-11-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除