系统编程制作
❶ 电脑怎样用编程做系统
编程软件无法安装系统。
❷ 系统编程
一窍不通最好先了解一下c语言,这是基础.如果你想速成的话易语言/VB之类的应该满足你,特别是易语言,不懂英文也行!
所有程序设计语言都是相通的.
我总是假定别人学习编程不是为了应付什么,而是成为高手级别的.而高手是可以融会贯通的。
我建议你学C和java,它们是语言中很有代表性的,C可以直接操控系统底层,而java面向对象比较彻底.如果学习到用C可以写出面向对象的中型程序,那你就是高手了.这时再去看C++或者其他语言是很轻松的.
汇编语言也不错,但是它偏底层了,现在的底层程序一般也用C不用汇编,主要是太费事了.暂时不建议学这个.
建议体会完整系统的示例代码,体会几个示例后就自己编写小程序.
除此之外,想学编程,不能急,要慢慢来,有耐心,(千万别下网上的电子书,那简直是浪费时间,自己花钱去买书回来看)相信你能成功!下面是一些书和要求:
1、《计算机组成原理》(熟悉)
2、《数据结构》(掌握)
3、《操作系统》(了解->熟悉)
4、《The C language》(掌握)
5、《编译原理》(了解原理)
6、《汇编语言》(了解)
7、《计算机网络》(了解)
8、《软件工程》(了解)
9、《关系数据库》(熟悉)
10、《The C++Languege 》(掌握)
11、《面向对象设计》(掌握;结合C++学习)
1、《The C Programming language》 (Keinighan & Dennis Ritchie 1988)
2、《The C++ Programming Languague》(Bjarne Stroustrup 1997)
3、《Inside The C++ Object Model》 (lippmans)
4、《Effective C++》 (同上)
5、《More Effective C++》 (同上)
6、《Exceptional c++》
7、《C++面向对象高效编程》
8、《设计模式》
9、《Thinking In C++》
10、《The Standard C++ Bible》(一般推荐)
11、《The Art of Computer Programming 》
12、《Programming Windows》 (Charles Petzold)
13、《VC++5.0技术内幕》
14、《MFC 深入浅出》
15、《软件需求》
16、《Advanced Windows》
17、《C++ primer》
18、《win32程序员参考手册》
19、《用TCP/IP进行网际互连》
20、《COM 本质论》
学编程就是这样,我今年30岁了,五年里跳了五次槽,不知道和大家比算不算多J,没有什么太多起伏,但我想很多朋友可能会和我有类似的经历,不知道能不能引起你们的共鸣。30岁,开始实现我的程序员梦,从一个编程爱好者,从一个业余的程序员,一个水平不高的程序员,一个半道出家的程序员...... 我想对我上面所说的话给一个总结:
如果你不是科班出身,想要转行而不知该怎么开始的话,建议你先看两类书:(1)计算机原理;(2)数据结构和算法。(看数据结构之前先看C语言)。
如果你还是在校的学生,英语很差,专业课也很差。没关系,想怎么学计算机就怎么学计算机吧。其它地只要能混到毕业证就行了。除非你对自己的未来没有信心。(当然,如果你的理想不仅仅是要做一个程序员,那你别丢掉英语。)
不要因为自己年轻就找理由挥霍时间,少玩一点SC、CS、魔兽3、传奇、魔力或者…….,多看点书,多练练题。
Java、.net、C++、PB、VB、Delphi、汇编到底应该学哪个?我的经验,哪个最简单就先学哪个、公司用哪个你就学哪个、哪个和你有缘(比如刚好你认识一个愿意帮助你的Delphi高手)你就学哪个,如果你都学,或者三天两头的换,我可以告诉你结果肯定是什么都不会,不要心浮气燥,他们都只是工具,学精一门其它的就相通了,重要的是掌握编程的思想。如果你问我面向对象(好像现在已经是面向需求了)、UML、WebLogic、WebService、软件工程、XML…….应该怎么学呀,对不起,这些我也确实不是都会,但请相信,你先实实在在的写上十万行以上的代码以后,那些东西你自然就慢慢会了。 什么时候努力都不晚,关键是你明白要努力了,大器晚成总比一事无成要好的多。
大家不要误会,这里的假于物可不是指抄袭别人的源代码,而是指通过学习别人的源代码把他的思想扩展到自己的思想里去。
注:上面的十大“精华”纯属我个人的“谬论”,您自己看着消化,有用的收下,没用的请拖入“回收站”。如果你觉得这些总结不过是一些浮华之词,那请你先问问自己:“是不是在行动上都真正做到了。”
如果你觉得自己应该追求什么,不管遇到什么困难千万不要放弃,一定要坚持下去。
这就是我,一个不算优秀,不算勤奋;玩能玩通宵,学也学能学通宵;对梦想的追求很执着;到了30才开始真正写程序;一个很平凡但又不甘于平凡的人……我的经历相信很多朋友都有过的,我现在也不能算是一个成功人士,但我相信我的经历却是值得大家借鉴的,因为我终究代表了一类人。
最后我还想说一点:现在很多朋友都抱怨中国的软件业环境太差,前途渺茫。确实是这样,我有同感。最后:希望所有的程序员和拥有成为程序员梦想的朋友们在新的一年里心想事成,万事如意。请相信我:明天不一定更美好,但美好的一天一定会来!
❸ 如何自己制作一个基于windows的免编程操作系统
微软没有公布内核和源代码,所以你无法基于Windows再创一个OS,但你可以重新合成其相关文件,下面将一步步教你!
下载一个叫做NTlite的软件
在左上角添加Windows的ISO文件(不同的版本路径不一样,自己网络一下你的Windows版本的ISO文件的路径)
双击加载文件
尽情定制吧!
如果你对纯文字的教程感到困惑或者不知如何操作,那么你可以尝试访问以下几个网站
网站1WikiHow
(网站1 是中文网站,第二个是Wikihow国际版里的相关教程,需要翻译!)
❹ PLC控制系统编程步骤
熟悉控住对象、PLC选型及确定硬件配置、设计PLC的外部接线。设计控制程序、程序调试和编制技术文件。
1 了解控制对象,确定控制要求 这一步是系统设计的基础。首先应详细了解被控对象的全部功能和它对控制系统的要求,例如机械的动作,机械、液压、气动、仪表、电气系统之间的关系,系统是否需要设置多种工作方式(如自动、半自动、手动等),PLC与系统中其他智能装置之间的联系,是否需要通信联网功能,是否需要报警,电源停电及紧急情况的处理 ,在这一阶段,还要选择用户输入设备(按钮、操作开关、限位开关、传感器等)、输出设备(继电器、接触器、信号指示灯等执行元件),以及由输出设备驱动的控制对象(电动机、电磁阀等)。
此外还应确定哪些信号需要输入给PLC,哪些负载由PLC驱动,并分类统计出各输入量和输出量的性质,是开关量还是模拟量,是直流量还是交流量,以及电压的大小等级,为PLC的选型和硬件配置提供依据。
2 确定硬件配置,设计外部接线图 正确选择PLC对于保证整个控制系统的技术与经济性能指标起着重要的作用。选择PLC,包括机型的选择。容量的选择。I/O模块的选择,电源模块的选择等。
根据被控对象对控制系统的要求,及PLC的输入量、输出量的类型和点数。确定出PLC的型号和硬件配置。对于整体式PLC,应确定基本单元和扩展单元的型号;对于模块式PLC,应确定框架(或基板)的型号及所需模板的型号和数量。
PLC硬件配置确定后,应对I/O点进行分配,确定外部输入输出单元与PLC的I/O点的连接关系,完成I/O点地址定义表。
分配好与各输入量和输出量相对应的元件后,设计出PLC的外部接线图。其他部分的电路原理图、接线图和安装所需的图纸,以便进行硬件装配。
3 设计控制程序 在硬件设计的基础上,通过控制程序的设计完成系统的各项功能。对于较简单的控制系统可以使用经验法直接设计出梯形图。
4 程序调试 控制程序是控制整个系统工作的软件,是保证系统工作正常、安全、可靠的关键。因此,控制系统的设计必须经过反复调试、修改,直到满足要求为止。
程序的调试可以分为两步。
(1)模拟调试。用户程序一般先在实验室进行模拟调试,实际的输入信号可以用手动开关和按钮来模拟,各输入量的通断状态用PLC上对应的发光二极管来显示,一般不用接PLC实际的负载(如接触器、电磁阀等)。实际的反馈信号(如限位开关的接通等)可以根据流程图,在适当的时候用开关和按钮来模拟。
在调试时应充分考虑各种可能的情况,系统的各种不同的工作方式,有选择序列的流程图中的每一条支路,各种可能的进展路线,都应逐一检查,不能遗漏。发现问题后及时修改程序,直到在各种可能的情况下输入量与输出量之间的关系完全符合要求。如果程序中的某些定时器或计数器的设定值过大,为了缩短调试时间,可以在调试时将它们减小,模拟调试结束后再写入它们的实际设定值。
(2)现场调试。现场调试要等到系统其他硬件安装和接线工作完成后才能进行。在设计和模拟调试程序的同时就可以设计、制作控制台或控制柜,PLC之外的其他硬件的安装、接线工作可以同时进行、以缩短整个工程的周期。
完成以上工作后,将PLC安装到控制现场,进行联机总调试,并及时解决调试时发现的软件和硬件方面的问题。
5 编制技术文件 系统交付使用后,应根据调试的最终结果整理出完整的技术文件,并提供给用户,以利于系统的维修和改进。技术文件主要如下:
(1)可编程序控制器的外部接线图和其他电气图纸。
(2)可编程序控制器的编程元件表,包括程序中使用的输入输出继电器、辅助继电器、定时器、计数器、状态寄存器等的元件号、名称、功能以及定时器、计数器的设定值等。
(3)带注释的梯形图和必要的文字说明
(4)如果梯形图是用顺序控制法编写的,应提供顺序功能图或状态表。
❺ 程序是如何编写的
设计环境 程序也就是指令的集合,它告诉计算机如何执行特殊的任务。
❻ 简述可编程控制器系统设计的一般原则和步骤!
(1) 最大限度地满足被控对象的要求;
(2) 在满足控制要求的前提下,力求使控制系统简单、经济、适用及维护方便;
(3) 保证系统的安全可靠;
(4) 考虑生产发展和工艺改进的要求,在选型时应留有适当的余量。
由于PLC的结构和工作方式与一般微机和继电器相比各有特点,所以其设计的步骤也不尽相同,具体设计步骤如下:
(1) 详细了解被控对象的生产工艺过程,分析控制要求;
(2) 根据控制要求确定所需的用户输入/输出设备;
(3) 选择PLC类型;
(4) 分配PLC的I/O点,设计I/O连接图;
(5) PLC软件设计,同时可进行控制台的设计和现场施工;
(6) 系统调试,固化程序,交付使用。
(6)系统编程制作扩展阅读
(1) PLC容量的选择
①首先要对控制任务进行详细的分析,把所有的I/O点找出来,包括开关量I/O和模拟量I/O 这些I/O点的性质。
②然后要对用户存储器容量进行估算。总存储器字数=(开关量输入点数+开关量输出点数)×10+模拟量点数×150。然后按计算存储器字数的25%考虑余量。
(2) PLC机型的选择
由于生产PLC的厂家众多,实现的功能虽基本相同,性能、价格和编程语言却有较大差别,一般从以下几个方面考虑。
①功能方面:所有PLC一般都具有常规的功能,但对某些特殊要求,就要知道所选用的PLC 是否有能力完成控制任务。
②价格方面:不同厂家的PLC产品价格相差很大,有些功能类似、质量相当、I/O点数相当的PLC的价格能相差40%以上。在使用PLC较多的情况下,性价比是一个重要的因素。
③售后服务:应考虑相关的技术支持,统一型号方便维护,系统改造、升级等因素。
❼ 复杂系统程序设计最好采用什么程序设计方法
可编程控制器程序设计语言有哪几种?各程序设计语言的含义和特点? 在可编程控制器中有多种程序设计语言,它们是梯形图语言、布尔助记符语言、功能表图语言、功能模块图语言及结构化语句描述语言等。梯形图语言和布尔助记符语言是基本程序设计语言,它通常由一系列指令组成,用这些指令可以完成大多数简单的控制功能,例如,代替继电器、计数器、计时器完成顺序控制和逻辑控制等,通过扩展或增强指令集,它们也能执行其它的基本操作。功能表图语言和语句描述语言是高级的程序设计语言,它可根据需要去执行更有效的操作,例如,模拟量的控制,数据的操纵,报表的报印和其他基本程序设计语言无法完成的功能。功能模块图语言采用功能模块图的形式,通过软连接的方式完成所要求的控制功能,它不仅在可编程序控制器中得到了广泛的应用,在集散控制系统的编程和组态时也常常被采用,由于它具有连接方便、操作简单、易于掌握等特点,为广大工程设计和应用人员所喜爱。 根据可编程器应用范围,程序设计语言可以组合使用,常用的程序设计语言是: 梯形图程序设计语言 布尔助记符程序设计语言(语句表) 功能表图程序设计语言 功能模块图程序设计语言 结构化语句描述程序设计语言 梯形图与结构化语句描述程序设计语言 布尔助记符与功能表图程序设计语言 布尔助记符与结构化语句描述程序设计语言 1、梯形图(Ladder Diagram)程序设计语言 梯形图程序设计语言是用梯形图的图形符号来描述程序的一种程序设计语言。采用梯形图程序设计语言,程序采用梯形图的形式描述。这种程序设计语言采用因果关系来描述事件发生的条件和结果。每个梯级是一个因果关系。在梯级中,描述事件发生的条件表示在左面,事件发生的结果表示在后面。 梯形图程序设计语言是最常用的一种程序设计语言。它来源于继电器逻辑控制系统的描述。在工业过程控制领域,电气技术人员对继电器逻辑控制技术较为熟悉,因此,由这种逻辑控制技术发展而来的梯形图受到了欢迎,并得到了广泛的应用。 梯形图程序设计语言的特点是: (1)与电气操作原理图相对应,具有直观性和对应性; (2)与原有继电器逻辑控制技术相一致,对电气技术人员来说,易于撑握和学习; (3)与原有的继电器逻辑控制技术的不同点是,梯形图中的能流(Power FLow)不是实际意义的电流,内部的继电器也不是实际存在的继电器,因此,应用时,需与原有继电器逻辑控制技术的有关概念区别对待; (4)与布尔助记符程序设计语言有一一对应关系,便于相互的转换和程序的检查。 2、布尔助记符(Boolean Mnemonic)程序设计语言 布尔助记符程序设计语言是用布尔助记符来描述程序的一种程序设计语言。布尔助记符程序设计语言与计算机中的汇编语言非常相似,采用布尔助记符来表示操作功能。 布尔助记符程序设计语言具有下列特点: (1)采用助记符来表示操作功能,具有容易记忆,便于撑握的特点; (2)在编程器的键盘上采用助记符表示,具有便于操作的特点,可在无计算机的场合进行编程设计; (3)与梯形图有一一对应关系。其特点与梯形图语言基本类同。 3、功能表图(Sepuential Function Chart)程序设计语言 功能表图程序设计语言是用功能表图来描述程序的一种程序设计语言。它是近年来发展起来的一种程序设计语言。采用功能表图的描述,控制系统被分为若干个子系统,从功能入手,使系统的操作具有明确的含义,便于设计人员和操作人员设计思想的沟通,便于程序的分工设计和检查调试。功能表图程序设计语言的特点是: (1)以功能为主线,条理清楚,便于对程序操作的理解和沟通; (2)对大型的程序,可分工设计,采用较为灵活的程序结构,可节省程序设计时间和调试时间; (3)常用于系统的规模校大,程序关系较复杂的场合; (4)只有在活动步的命令和操作被执行,对活动步后的转换进行扫描,因此,整个程序的扫描时间较其他程序编制的程序扫描时间要大大缩短。 功能表图来源于佩特利(Petri)网,由于它具有图形表达方式,能较简单和清楚地描述并发系统和复杂系统的所有现象,并能对系统中存有的象死锁、不安全等反常现象进行分析和建模,在模型的基础上能直接编程,所以,得到了文泛的应用。近几年推出的可编程控制器和小型集散控制系统中也已提供了采用功能表图描述语言进行编程的软件。关于佩特利(Petri)网的一些基本概念,我在以后有机会时再介绍给各位,以有助于对功能表图的进一步理解。 4、功能模块图(Function Block)程序设计语言 功能模块图程序设计语言是采用功能模块来表示模块所具有的功能,不同的功能模块有不同的功能。它有若干个输入端和输出端,通过软连接的方式,分别连接到所需的其它端子,完成所需的控制运算或控制功能。功能模块可以分为不同的类型,在同一种类型中,也可能因功能参数的不同而使功能或应用范围有所差别,例如,输入端的数量、输入信号的类型等的不同使它的使用范围不同。由于采用软连接的方式进行功能模块之间及功能模块与外部端子的连接,因此控制方案的更改、信号连接的替换等操作可以很方便实现。功能模块图程序设计语言的特点是: (1)以功能模块为单位,从控制功能入手,使控制方案的分析和理解变得容易; (2)功能模块是用图形化的方法描述功能,它的直观性大大方便了设计人员的编程和组态,有较好的易操作性; (3)对控制规模较大、控制关系较复录的系统,由于控制功能的关系可以较清楚地表达出来,因此,编程和组态时间可以缩短,调试时间也能减少; (4)由于每种功能模块需要占用一定的程序内存,对功能模块的执行需要一定的执行时间,因此,这种设计语言在大中型可编程控制器和集散控制系统的编程和组态中才被采用。 5、结构化语句(Structured Text)描述程序设计语言 结构化语句描述程序设计语言是用结构化的描述语句来描述程序的一种程序设计语言。它是一种类似于高级语言的程序设计语言。在大中型的可编程序控制器系统中,常采用结构化语句描述程序设计语言来描述控制系统中各个变量的关系。它也被用于集散控制系统的编程和组态。 结构化语句描述程序设计语言采用计算机的描述语句来描述系统中各种变量之间的各种运算关系,完成所需的功能或操作。大多数制造厂商采用的语句描述程序设计语言与BASIC语言、PASCAL语言或C语言等高级语言相类似,但为了应用方便,在语句的表达方法及语句的种类等方面都进行了简化。 结构化程序设计语言具有下列特点: (1)采用高级语言进行编程,可以完成较复杂的控制运算; (2)需要有一定的计算机高级程序设计语言的知识和编程技巧,对编程人员的技能要求较高,普通电气人员无法完成。 (3)直观性和易操作性等性能较差; (4)常被用于采用功能模块等其他语言较难实现的一些控制功能的实施。 部分可编程序控制器的制造厂商为用户提供了简单的结构化程序设计语言,它与助记符程序设计语言相似,对程序的步数有一定的限制,同时,提供了与可编程序控制器间的接口或通信连接程序的编制方式,为用户的应用程序提供了扩展余地。
❽ 电脑系统是如何制作的
在开始回答你的问题之前,先看看程序的发展历史,请留意有关储存器和数据的描述:
1834 年:Babbage 设想制造一台通用分析机,在只读存储器(穿孔卡片)中存储程序和数据 。Babbage在以后的时间里继续他的研究工作,并于1840 年将操作位数提高到了40 位,并基本实现了控制中心(CPU)和存储程序的设想,而且程序可以根据条件进行跳转,能在几秒内做出一般的加法,几分钟内做出乘、除法。
1890 年:美国人口普查部门希望能得到一台机器帮助提高普查效率。Herman Hollerith (后来他的公司发展成了IBM 公司)借鉴Babbage 的发明,用穿孔卡片存储数据,并设计了机器。结果仅用6 周就得出了准确的人口统计数据(如果用人工方法,大概要花10 年时间)。
1935 年:IBM 推出IBM 601 机。这是一台能在一秒钟内算出乘法的穿孔卡片计算机 。这台机器无论在自然科学还是在商业应用上都具有重要的地位,大约制造了1500 台。
1941 年夏季:Atanasoff 和学生Berry 完成了能解线性代数方程的计算机,取名叫"ABC "(Atanasoff-Berry Computer),用电容作存储器 ,用穿孔卡片作辅助存储器,那些孔实际上是"烧"上去的,时钟频率是60Hz,完成一次加法运算用时一秒。
1943 年1 月:Mark I 自动顺序控制计算机在美国研制成功。整个机器有51 英尺长 、5 吨重 、75万个零部件。该机使用了3304 个继电器,60 个开关作为机械只读存储器。程序存储在纸带上 ,数据可以来自纸带或卡片阅读器。Mark I 被用来为美国海军计算弹道火力表。
1943 年9 月:Williams 和Stibitz 完成了"Relay Interpolator ",后来命名为"Model Ⅱ Re-
lay Calculator "的计算机。这是一台可编程计算机,同样使用纸带输入程序和数据。它运行更可靠,每个数用7 个继电器表示,可进行浮点运算。
真空管时代的计算机尽管已经步入了现代计算机的范畴,但因其体积大、能耗高、故障多、价格贵,从而制约了它的普及和应用。直到晶体管被发明出来,电子计算机才找到了腾飞的起点。
1947 年:Bell 实验室的William B.Shockley 、 John Bardeen 和Walter H.Brattain 发明了晶体
管,开辟了电子时代新纪元。
1949 年:剑桥大学的Wilkes 和他的小组制成了一台可以存储程序的计算机,输入输出设备仍是纸带。
1949 年:EDVAC(Electronic Discrete Variable Automatic Computer--电子离散变量自动计算机)--第一台使用磁带的计算机。这是一个突破,可以多次在磁带上存储程序。这台机器是John von Neumann 提议建造的。
1950 年:日本东京帝国大学的Yoshiro Nakamats 发明了软磁盘 ,其销售权由IBM公司获得 。由此开创了存储时代的新纪元。
1951 年:Grace Murray Hopper 完成了高级语言编译器。
1951 年:UNIVAC-1 --第一台商用计算机系统诞生,设计者是J.Presper Eckert 和John Mauchly 。
被美国人口普查部门用于人口普查,标志着计算机进入了商业应用时代。
1953 年:磁芯存储器被开发出来。
1954 年:IBM 的John Backus 和他的研究小组开始开发FORTRAN(FORmula TRANslation) ,1957 年完成。这是一种适合科学研究使用的计算机高级语言。
1957 年:IBM 开发成功第一台点阵式打印机。
好了现在开始吧:
操作系统是什么呢?说白了就是一套计算机的指令集合,而计算机的指令就是'1010101'之类的机器码,说到底,‘1001010’也是数据,就是可以储存在介质之中的东东,比如纸质卡片,磁盘,芯片上。对于问题“第一个操作系统如何编写的呢”,可以归结为:第一个计算机软件如何编写(在这里,请改变对操作系统的神秘感,操作系统也是一个软件,一个特殊的程序),即是计算机的指令如何记录下来,并且被计算机执行。那么答案已经出来了~~,请再次看一下上面的例子,你会有所启发
还有什么问题请问吧~~~
还有一个问题回答:“自带boot”虽然不知道你这是什么意思(boot程序??),但是可以肯定告诉你,在硬件生产时,“可以”直接把’boot”生产在芯片上,为什么?如上说,程序就是10100数据,生产商只要在芯片上设置电路的通断,就可以表示10101001000101 (注意了,这里只是一个例子)
好吧,现在假设我们有电脑,要开发操作系统,但是知道计算机指令
那么下面的一段程序(示例)我不得不把他写在纸质笔记本上:
mov ax,0
..
...
这段程序人工翻译成机器码,到现在还没有操作系统:
........
好了操作系统在我的纸上写好了,我就请求硬件开发商把我的程序刻录到软盘上,于是开发商就对照.....把数据刻录到软盘上
于是,操作系统开发完毕,只要想办法被CPU执行就可以了
❾ c语言windows系统编程怎么搞
在操作系统上的编程说白了就是调用系统的API,windows系统一般是编写窗口程序,学好了很有用处的。