博文
生命(2006-03-24 23:44:00)
摘要:总是觉得生命离我们很遥远,在日复一日,一成不变的生活面前。于是,恣意的挥霍生命,强硬的为自己施加很多额外的条件。 一直到今天接到同事打来的电话,另一位同事的父亲突然坠楼身亡,而这位年轻的同事此刻正座在返家的汽车里,心情愉悦的憧憬着总总美好的情景。没有人敢把实话告诉他,只是从侧面小心的透露他家里出了一点状况。然后是大段的沉默,秋天的阳光明媚而透明,透过宽大的玻璃窗照在每个人的脸上,我转过头看窗外的红墙绿瓦,树叶开始返出黄色,早落的叶子已经在风中摇曳。有微咸的液体悄悄的滑下,生命在这一刻显得苍白脆弱,一片飘飞的落叶和一个早逝的生命同样让我们无可奈何。 耳机里一遍一遍响着伤感的音乐,静静的听着,给思维一个广阔的空间,夜幕下的大地幽静深远,一切都自然生长,万物遵循着各自的规律生生灭灭,秋虫依旧低唱,江水依旧东流,月光清照。人的生命在大自然的面前如此渺小,那些所谓的欲望和渴求,功利的较逐显得多么的可笑。抬头望月,一轮满圆,仲秋的月亮娇媚明朗,自古就是相思的代名词,今夜有多少思念的人在对月倾诉无限相思。爱情,友情,亲情婉转在这浓浓的月光之上。 我不敢想象此时我这位年轻同事的心情和他所面临的巨大伤悲,在这样忧郁沉寂的夜晚,对于飞逝的生命我们都无能为力。伸开单薄的手掌,脉纹交错的掌纹能够预示什么,是爱情,工作,还是生命的长度?我一度很相信手掌上的代表命运的三条掌纹,以为这些清新笔直的线路可以带领我走向幸福的岸边。于是总是在不自觉的消耗朋友,亲人的关爱,不自觉的忽略温暖的问候,陷入某种失望的感情中不肯轮回。曾经的过往,无论甜蜜或则忧伤,都在时间的长河里逐渐的淡去了,只在回忆时留下也许清晰也许模糊的痕迹,哭也好,笑也好,岁月不停的向前,每一天都有生命的诞生和消亡,延续的是生命的本身,而不是生命的个体。悲痛是再所难免的,然悲痛过后,还是要学会继续微笑着面对。就像亘古不变的明月,从缺到圆,从圆到缺,历经千年的沧桑,人世的落寞和繁华,终是皎皎清辉光耀大地。 穿透悠长的思念,在夜里刻下你最珍爱的那个名字,在静静的相思里涂满玫瑰样的色彩,无关与爱情,无关与苦痛,只为着他们和你一起走过的日子,共同属于你和他的朴素的回忆,那些关于生命里最美好的分分秒秒,包括争吵,包括欢喜。生命可以消逝远离,但记忆却会长留不止,活着的你会因了他给你的这些永久的记忆而心存感激,守着你们共有的秘密,你会发......
西电导师联系方式1(2006-03-24 20:24:00)
摘要:
硕士生导师
博士生导师
·当前列表『 硕士生导师 』——导师按姓名顺序排列·
(1) 电路与系统 [080902]
导师姓名
现工作单位
办公电话
电子邮箱
陈建安
-
-
-
冯小平
电子工程学院204教研室
029-8202264
xpfeng#mail.xidian.edu.cn
胡方明
生物医学工程系
(029)88202830 13309200007
fangming95@163.com
焦李成
电子工程学院
-8201023
lchjiao#mail.xidian.edu.cn
来新泉
电路CAD研究所
88203007;88321906
xqlai#mail.xidian.edu.cn
李鹏
电子工程学院204室
-88202264
li_peng001@163.com
李小平
机电工程学院测控系
88203215
xpli@xidian.edu.cn
李玉山
电路CAD研究所
8203007
yshli#iecad.xidian.edu.cn
梁继民
电子工程学院
88201842
jiminliang#see.xidian.edu.cn
刘笃仁
电子工程学院208教研室
8202265
drliu#mail.xidian.edu.cn
刘贵喜
西安电子科技大学
13096975139
gxliu#xidian.edu.cn
刘书明
电子工程学院210教研室
8202268
liu#ssip.xidian.edu.cn
那彦
电子工程学院
029-88202133 13279289765
yna#mail.xidian.edu.cn
石光明
电子工程学院203教研室
88201020,88204453
gmshi@xidian.edu.cn
史林
-
-
-
王松林
-
-
-
吴艳
电子工程学院电子工程系
029-88203414--606
ywu#mai......
花儿(2006-03-23 23:30:00)
摘要:
#include #include
/*花儿*/void hua(int x,int y){register i;setcolor(12);arc(x+65,y-60,150,350,8);arc(x+66,y-54,300,470,8);arc(x+65,y-56,30,230,10);arc(x+64,y-57,300,460,17);ellipse(x+73,y-30,250,450,27,40);ellipse(x+59,y-30,100,290,27,40);ellipse(x+65,y-40,140,270,20,30);setfillstyle(SOLID_FILL,5);floodfill(x+65,y-20,12);arc(x,y,150,350,12);arc(x+1,y+8,280,470,12);arc(x,y+2,30,230,16);arc(x,y+3,80,240,28);arc(x+2,y+8,180,330,22);arc(x-2,y+2,310,460,25);ellipse(x-12,y+30,120,300,30,40);ellipse(x+10,y+28,250,423,30,42);ellipse(x-4,y+10,290,393,30,40);setfillstyle(SOLID_FILL,4);floodfill(x+5,y+31,12);ellipse(x+120,y+5,0,360,15,25);setfillstyle(SOLID_FILL,15);floodfill(x+120,y,12);ellipse(x-70,y+10,0,360,14,20);setfillstyle(SOLID_FILL,14);floodfill(x-70,y+10,12);setcolor(10);ellipse(x-15,y+32,190,310,30,35);ellipse(x+16,y+32,235,355,26,35);ellipse(x,y+35,190,350,43,50);arc(x,y+82,190,350,6);setfillstyle(SOLID_FILL,2);floodfill(x,y+75,10);ellipse(x+50,y-48,190,320,22,50);ellipse(x+80,y-48......
进制转换(2006-03-19 23:22:00)
摘要:/** Function : fun* Usage : fun(num_10,num,n);* --------------------------* num_10 : 10进制数* num : 保存转换后的字符数组* n : 几进制(如2,8,16)* -----------------------------*/void fun(int num_10,char *num,int n) { char *p=num,temp; do { temp=(num_10%n+'0'); *p++=(temp>=':')?('A'+(temp-':')):temp; }while (num_10/=n); *p='\0'; /*修改存放位置,因为上面是以反向存放的*/ for (p--;p>=num;p--,num++) temp=*p,*p=*num,*num=temp;}int main() { int num_10; char num[80]; scanf("%d",&num_10); fun(num_10,num,8);  ......
从键盘输入一个十进制数(<60000),将其转换为二进制数(2006-03-19 23:20:00)
摘要:从键盘输入一个十进制数(<60000),将其转换为二进制数. 将二进制数显示在屏幕上. data segment x db 34h ;00110100b ;34h在内存中的存储格式为00110100b data ends code segment assume cs:code,ds:data start: mov ax,da......
C语言中的位图(2006-03-19 23:18:00)
摘要:可以参见位图的显示位图文件是分成4部分的。第一部分是位图文件头,它包括位图文件名,位图的大小和位图数据离文件头的偏移量。接下去的是位图信息头,它包括了位图的许多信息,比如位图的宽度,高度和位图使用的颜色数。再后面是颜色表,它可能包含了2个或更多的RGBQUAD结构。最后面是位图图象的数据。 一.位图结构如下: ---- 一、BMP文件结构 ---- 1. BMP文件组成 ---- BMP文件由文件头、位图信息头、颜色信息和图形数据四部分组成。 ---- 2. BMP文件头 ---- BMP文件头数据结构含有BMP文件的类型、文件大小和位图起始位置等信息。 ---- 其结构定义如下: typedef struct tagBITMAPFILEHEADER { WORDbfType; // 位图文件的类型,必须为BM DWORD bfSize; // 位图文件的大小,以字节为单位 WORDbfReserved1; // 位图文件保留字,必须为0 WORDbfReserved2; // 位图文件保留字,必须为0 DWORD bfOffBits; // 位图数据的起始位置,以相对于位图 // 文件头的偏移量表示,以字节为单位 } BITMAPFILEHEADER; ---- 3. 位图信息头 BMP位图信息头数据用于说明位图的尺寸等信息。 typedef struct tagBITMAPINFOHEADER{ DWORD biSize; // 本结构所占用字节数 LONGbiWidth; // 位图的宽度,以像素为单位 LONGbiHeight; // 位图的高度,以像素为单位 WORD biPlanes; // 目标设备的级别,必须为1 WORD biBitCount// 每个像素所需的位数,必须是1(双色), // 4(16色),8(256色)或24(真彩色)之一 DWORD biCompression; // 位图压缩类型,必须是 0(不压缩), // 1(BI_RLE8压缩类型)或2(BI_RLE4压缩类型)之一 DWORD biSizeImage; // 位图的大小,以字节为单位 LONGbiXPelsPerMeter; // 位图水平分辨率,每米像素数 LONGbiYPelsPerMeter; // 位图垂直分辨率,每米像素数 DWORD biClrUsed;//......
汇编下DEBUG下面的命令(2006-03-19 23:15:00)
摘要:
一,在debug环境下建立和汇编程序(1)进入debugC:\debug 回车(2)输入程序并汇编-A 100 回车0AF0:0100 mov dl,38 回车0AF0:0102 mov ah,2 回车0AF0:0104 int 21h 回车0AF0:0106 int 20h 回车0AF0:0108 回车(3)运行程序-g=1008Program terminated normally如果想分析该程序的指令,可使用反汇编命令U(4)反汇编-u 100,108 回车0AF0:0100 B238 MOV DL,30AF0:0102 B402 MOV AH,00AF0:0104 CD21 INT 210AF0:0106 CD20 INT 200AF0:0108 56 PUSH SI(5)将机器指令程序送到起始地址为200h的单元-e 200 b2,38,b4,02,cd,21,cd,20,56-g=2008Program terminated normally-二,常用debug命令介绍(1)显示,修改寄存器内容显示所有寄存器内容格式:-r 回车功能:以十六进制形式显示cpu内部个寄存器的值;以符号形式显示标志寄存器的各标志位(除......
在C中的一些词问题(2006-03-19 23:09:00)
摘要:在编写程序的时候,我们经常要用到#pragma指令来设定编译器的状态或者是指示编译器完成一些特定的动作.下面介绍了一下该指令的一些常用参数,希望对大家有所帮助! 一. message 参数。 message 它能够在编译信息输出窗 口中输出相应的信息,这对于源代码信息的控制是非常重要的。其使用方法为: #pragma message(“消息文本”) 当编译器遇到这条指令时就在编译输出窗口中将消息文本打印出来。 当我们在程序中定义了许多宏来控制源代码版本的时候,我们自己有可能都会忘记有没有正确的设置这些宏,此时我们可以用这条指令在编译的时候就进行检查。假设我们希望判断自己有没有在源代码的什么地方定义了_X86这个宏可以用下面的方法 #ifdef _X86 #pragma message(“_X86 macro activated!”) #endif 当我们定义了_X86这个宏以后,应用程序在编译时就会在编译输出窗口里显示“_ X86 macro activated!”。我们就不会因为不记得自己定义的一些特定的宏而抓耳挠腮了 二. 另一个使用得比较多的#pragma参数是code_seg。格式如: #pragma code_seg( [ [ { push | pop}, ] [ identifier, ] ] [ "segment-name" [, "segment-class" ] ) 该指令用来指定函数在.obj文件中存放的节,观察OBJ文件可以使用VC自带的dumpbin命令行程序,函数在.obj文件中默认的存放节为.text节如果code_seg没有带参数的话,则函数存放在.text节中push (可选参数) 将一个记录放到内部编译器的堆栈中,可选参数可以为一个标识符或者节名pop(可选参数) 将一个记录从堆栈顶端弹出,该记录可以为一个标识符或者节名identifier (可选参数) 当使用push指令时,为压入堆栈的记录指派的一个标识符,当该标识符被删......
关于简谐振动的演示(2006-03-19 23:05:00)
摘要:#include <graphics.h>#include <math.h>#include <dos.h>#include <malloc.h>#include <string.h>#define TIMEINTR 0x1c#define MARGIN 4#define BUTTONNUM 2#define SCROLLBUTTONNUM 1#define PI 3.1415926535#define SB_WIDTH 20#define SB_LENGTH 60typedef enum bool {false, true}bool;typedef enum state {OFF = 1, ON}State;typedef enum mode {UP = 2, DOWN = 1};typedef struct { int x,oldx; int y,oldy; int but;} MOUSE;typedef struct movement{ double A, W, Angle; double (*Coordinate)(double Time, struct movement *p);}MOVE;typedef struct button{ int x,y; char *contents; void (*Show)(struct button *p, int mode); bool (*Clicked)(struct button *p); void (*Function)();}BUTT......
setjmp与longjmp相结合,实现程序的非本地的跳转(2006-03-19 23:01:00)
摘要:setjmp与longjmp相结合,实现程序的非本地的跳转 呵呵!这就是goto语句所不能实现的。也正因为如此,所以才说在C语言中,setjmp与longjmp相结合的方式,它提供了真正意义上的异常处理机制。其实上一篇文章中的那个例程,已经演示了longjmp函数的非本地跳转的场景。这里为了更清晰演示本地跳转与非本地跳转,这两者之间的区别,我们在上面刚才的那个例程基础上,进行很小的一点改动,代码如下:void Func1(){// 其它代码的执行// 判断程序远行中,是否出现错误,如果有错误,则跳转!if(1) longjmp(mark, 1);}void Func2(){// 其它代码的执行// 判断程序远行中,是否出现错误,如果有错误,则跳转!if(2) longjmp(mark, 2);}void Func3(){// 其它代码的执行// 判断程序远行中,是否出现错误,如果有错误,则跳转!if(-1) longjmp(mark, -1);}void main( void ){int jmpret;jmpret = setjmp( mark );if( jmpret == 0 ){// 其它代码的执行// 下面的这些函数执行过程中,有可能出现异常Func1();Func2();Func3();// 其它代码的执行}else{// 错误处理模块switch (jmpret){case 1:printf( "Error 1\n");break;case 2:printf( "Error 2\n");break;case 3:printf( "Error 3\n");break;default :printf( "Unknown Error");break;}exit(0);}return;} 回顾一下,这与C++中提供的异常处理模型是不是很相近。异常的传递是可以跨越一个或多个函数。这的确为C程序员提供了一种较完善的异常处理编程的机制或手段。setjmp和longjmp使用时,需要特别注意的事情 1、setjmp与longjmp结合使用时,它们必须有严格的先后执行顺序,也即先调用setjmp函数,之后再调用longjmp函数,以恢复到先前被保存的“程序执行点”。否则,如果在setjmp调用之前,执行longjmp函数,将导致程序的执行流变的不可预测,很容易导致程......
