自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (4)
  • 收藏
  • 关注

原创 关于软件架构的思考

软件版本迭代时间越长,好架构体现的作用越大。而好的架构总能灵活面对各种功能需求,灵活扩展。 个人觉得设计模式六大原则总结的很不错。这个原则思想在工业与生活都有体现,并非只在软件开发当中。例如一个大公司的组织架构,大楼的建造构架。还有例如苹果手机。从视频网站看各类品牌手机拆解比较,可以看出苹果手机的模块化作的最好,非常简洁。苹果公司制定接口,不同的元器件供应商用这些接口封装模块。而供应商也进化成提供单一功能模块的厂商。其实任何一个复杂系统,都需要考虑架构。想要提高效率,就得将各...

2021-12-08 19:26:32 359

原创 临界区 ,互斥锁,自旋锁比较(CriticalSection ,Spinlock , MutexSem)

网上看到一篇介绍以上三种锁的文章,写的很不错,翻译一下,顺便添加一些自己的见解。原文链接:http://modula2.org/sb/env/index35.htm所有这些对象都是互斥对象。有一些差异,既明显又不那么明显。CriticalSection快速在用户/内核态执行。(一般情况下在用户态执行,效率高) 在单个进程中同步线程。(不可以跨进程同步数据) 在获取到对象之前不...

2019-08-08 20:42:45 994 1

原创 用线程同步函数超时机制做计时器

最近项目中看到代码中有很奇怪的写法,线程循环用到windows线程同步方法的事件。但是这个事件不是用来做同步,用来当计时器使用,如下: thread function: while(m_hEvent && WaitForSingleObject(m_hEvent, nTimeout) != WAIT_OBJECT_0) {

2017-07-05 22:25:05 360

原创 本科生如何学习计算机科学与技术

作为已经毕业工作的程序猿,回顾自己本科四年的学习,感觉有很多不足之处,很想在回到校园重新学习。写博文总结一下,希望能给搜索这个题目的学生带来帮助。我本人是计算机科学与技术专业学生,大学所学内容涵盖了计算机科学的所以基础课程。其中包括C、C++,算法导论,数据结构,数电模电,计算机组成原理,微机原理,汇编语言,计算机网络,编译原理,计算机体系结构,操作系统。都是很基础的课程。说实话,能将以上课程都融

2017-03-29 21:12:25 3791 1

原创 数据结构--顺序线性表

最近学习java,用这门语言温习一下数据结构。public class List{ private int length; private int[] array; public List() { length = 0; array = new int[20]; } public boolean Insert(int

2016-10-17 14:57:44 318

原创 从汇编代码看程序内存分布

力求内容精简,以图会意 如下为代码:#include <iostream>using namespace std;int fun(int a,int b){ int sum = a + b; return sum;}int main(){ int a = 2, b = 3; fun(a,b); return 0;}以下为汇编代码(main函数):

2016-10-14 11:32:12 4110

转载 程序员的素质

------文章转自  白杨 http://baiy.cn        众所周知,软件和硬件工程师个体间存在巨大的生产力差异:经常有一个人一两天就能做好的事情另一个人花一两个月也没能做到同样好。        Apple创始人史蒂夫·乔布斯曾在《In the Company of Giants》一书中接收采访时提到:“一个最优秀的人完成工作的能力能抵50到100个一般水平的人”。而软件工

2016-09-21 12:27:50 534

原创 C++之引用揭秘

测试代码#include #include using namespace std;void fun(int &b){    int a = b;    cout }int main(){    int a = 8;    fun(a);    return 0;}第二条汇编指令将8这个值存储到变量a在栈中的空间。第三

2015-11-30 16:57:19 485

原创 关于C++中类的虚函数

看了好多的博客,其中很多对我帮助很大.这么我也写一回博客,讲讲的的心得。C++的书看了很多,C++反汇编很值得学习,不是为了真的去做反汇编,而是去更深入理解C++那些复杂语法背后发生的事情。关于C++虚函数,在定义了虚函数的类中,需要构造函数来初始化虚函数指针。将虚表地址赋值于类的头部。具体看代码;#include using namespace std;struct A{ A(

2015-09-08 12:52:13 608 1

原创 8086汇编语言实现快速排序算法

.model small.stack.dataarray db 12,45,13,9,45,48,68,32,5,11count equ $-array.code.startupmov ax,countsub ax,1xor dx,dxmov bx,offset arraycall qsortmov cx,countagain:xor ax,

2014-11-04 20:51:48 8700 4

rtc代码文件

rtc代码文件

2016-10-18

gcc-2.7.2.3版本源代码

本文档为gcc相对早期的源代码,想学习编译器的朋友可以参考参考

2014-12-15

HTML5从入门到精通

HTML5从入门到精通,一本好的中文学习教程,值得拥有。内容通俗易懂,适合初学者

2014-11-09

汇编语言实现快速排序

利用8086汇编语言实现快速排序法,文档为汇编代码,可以用masm编译运行

2014-11-09

空空如也

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

TA关注的人

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