网友提问:
软件是用编程软件编的,编程软件又怎么来的?
优质回答:
首先要明确几个概念,计算机语言、软件和开发平台,计算机语言是软件开发的基础,通过计算机语言才能实现和计算机硬件的通讯,实现对硬件的操作,一般计算机语言分为低级语言和高级语言,低级语言如:机器语言、汇编语言,可以直接操作硬件,速度快,但是编写和理解困难;高级语言如:C、C++、JАVA等,需要通过编译转换为机器语言实现对硬件操作,速度慢,但是更便于理解。
软件是通过计算机语言开发的,通过对计算机硬件的操作而实现某些功能的计算机程序的集合体,如:手机APP、PC端的应用、网站,甚至操作系统等都是软件。
一般所说的编程软件都是指的开发平台,也被称为IDE(集成开发环境),它的主要作用是通过集成一些开发常用的环境或者工具来提升软件开发的效率,如JАVA开发必须的JDK等。
所以说软件的基础是计算机语言,通过计算机语言结合一系列的算法从而实现对计算机硬件的操作,实现某些功能,而开发平台只是将代码的编辑过程进行了简化,使其更符合开发人员的思维逻辑。开发平台本身也是一个软件,也是通过某种计算机语言来写的,并且很多开发平台都是支持多语言的,如eclipse平台,除了支持JАVA开发,还支持C/C++、PHP、Python等,甚至可以开发eclipse自身的插件。
其他网友回答
在这美好的一天很荣幸为大家解答这个问题,让我们一起走进这个问题,现在让我们一起探讨一下。
以下我为大家分享,我个人对这个问题的看法与想法,希望我的分享能给大家带来帮助,也希望大家能够喜欢我的分享。
我认为程序的本质是给定输入,用指定逻辑给出输出。所以用basic写汇编编译器,JavaScript写c的编程工具完全做得到。c的编译器是c写的,go的编译器是go写的,Java的编译器是Java写的。
编程语言首先需要编译器把代码翻译成机器语言。而第一个编译器是慢慢迭代出来的,就是开始写一个简单的功能,然后逐步加强,直到完成一个完整的编译器。最早的C语言编译器就是这样写出来的。
其次,计算机语言、软件和开发平台,计算机语言是软件开发的基础,通过计算机语言才能实现和计算机硬件的通讯,实现对硬件的操作,一般计算机语言分为低级语言和高级语言,低级语言如:机器语言、汇编语言,可以直接操作硬件,速度快,但是编写和理解困难;高级语言如:C、C++、JАVA等,需要通过编译转换为机器语言实现对硬件操作,速度慢,但是更便于理解。
软件是通过计算机语言开发的,通过对计算机硬件的操作而实现某些功能的计算机程序的集合体,如:手机APP、PC端的应用、网站,甚至操作系统等都是软件。
一般所说的编程软件都是指的开发平台,也被称为IDE(集成开发环境),它的主要作用是通过集成一些开发常用的环境或者工具来提升软件开发的效率,如JАVA开发必须的JDK等。
所以说软件的基础是计算机语言,通过计算机语言结合一系列的算法从而实现对计算机硬件的操作,实现某些功能,而开发平台只是将代码的编辑过程进行了简化,使其更符合开发人员的思维逻辑。开发平台本身也是一个软件,也是通过某种计算机语言来写的,并且很多开发平台都是支持多语言的,如eclipse平台,除了支持JАVA开发,还支持C/C++、PHP、Python等,甚至可以开发eclipse自身的插件。
所以总结一下,编程软件通过硬件的支持,创造了我们使用的程序和其他的编程软件。
在以上的分享关于这个问题的解答都是个人的意见与建议,我希望我分享的这个问题的解答能够帮助到大家。
在这里同时也希望大家能够喜欢我的分享,大家如果有更好的关于这个问题的解答,还望分享评论出来共同讨论这话题。
我最后在这里,祝大家每天开开心心工作快快乐乐生活,健康生活每一天,家和万事兴,年年发大财,生意兴隆,谢谢!
其他网友回答
用一句话回答,就是: 编程软件是从0和1来的。
实际上,再复杂再高端的计算机(或叫电脑)技术,都是基于0和1两个二进制数码。 因为0和1 两个状态最容易用电路实现,电平(电压)高低、电流有无、开关通断,等等。其中最常用到的就是半导体管的通断。
0和1 既可以表达数值(比如 2位二进数 00、01、10、11,可以表示0~3,4个十进数 。以此类推,8位二进数可以表示0到255 ,256个十进数。等等);这构成计算机运算和处理的数据来源,计算机的各种数据(或信息)都建立在这基础上。
0和1 又可以表达 2个逻辑状态(比如 有、无;高、低;是、否;开、关,等等)。这构成计算机逻辑(逻辑:简单理解就是因果关系)运算的基础,计算机的各种功能都建立在逻辑运算(或叫逻辑推理)基础上。
为什么说二进制数码,而不叫数字,就是因为二进制 0和1 的数值和代码(要做的事)两个属性。
比如,在某 CPU 中,面对 0010 0100 。如果认作数值,就是十进数36;如果认作代码,就是将随后的2个数相加。
怎么区分数值和代码,是依据事先规定好的位置决定的。按照一定的规则,规定要做什么和要用到的数据在哪,就构成了面向CPU的计算机基础指令(简称计算机指令)。
有了计算机指令,就要考虑如何实现规定好的计算机指令。这需要一整套能够实现各种逻辑和算术运算的电路。这种电路,从1946年第一台电子计算机诞生,先后历经电子管(形似过去的长筒状灯泡,具备现在半导体管功能)、半导体分立元件(三极管、二极管)、小规模集成电路、中大规模集成电路、大超大规模集成电路时代。
无论哪一个阶段,无非都是围绕计算机如何实现规定的指令功能。首先,要选择计算机指令的规格:长度(以字节计,见下说明)、操作码(处于指令中首部,定义指令做什么)、操作数(定义指令需要的数据或指明数据在哪里)。
一种CPU对应一套指令(几十到几百条不等),称为指令系统。以8位计算机为例,操作码通常为1字节(可以扩展为2字节)。一条指令操作码必有(表明做什么),操作数视情况可以0字节(用不到数据)、1字节、2字节。
有了CPU 能够执行的指令,就象汉语文有了基本的单字(词)。编程,最终愿望无非是要用这些字(词),书写流芳百世的长篇巨制。但是,且慢!一口吃不成一个胖子! 你必须从识字开始(就是要精准理解每一条(类)指令的含义,这要举一反三而后死记);要学会组词、造句(编写简单程序);要学会看图说话、学会写作短文(编写有一些具有应用价值的程序);要学会写作各种题材记叙文、散文、小说直至长篇巨制。 好了,这就是一个35~40年前程序员的成长历程。太艰难了!
本人曾用“死去活来”形容进阶过程:1)广义的—首先要死死记住指令系统每一条(类)常用指令的精确定义,然后是灵活运用指令编写能完成各种任务、实现不同功能的程序。 2)狭义的—熟练掌握这门技术,必然要学得死去活来。
还没完! 指令采用二进制数码或十六进数码(0~9、A~F)表达,称为机器码(CPU能直接识别执行的形式),早期也采用机器码编程。但采用机器码编程,难认难记非常不便(00~FF,256种组合对应256条指令,要背下来真心不易。本人倒是用得实在太多了,不经意间就背下来了)。
于是,人们构造了能帮助识别与记忆的英文助记符代替机器码(或称机器指令),只要能认三五十个英文单词,就能较好的记住这些指令。助记符又称符号指令,它和机器指令是一一对应的,所以运用符号指令编程也就意味着运用机器指令编程。 符号指令配套编程所需的辅助符号(称伪指令)和数据,构成所谓 汇编语言。
只不过,符号指令程序(称汇编语言程序)要通过一个简单的汇编程序(传统术语)转换成CPU能直接执行的机器指令程序。这个过程,就是最底层的程序设计(编程),凡是涉及计算机处理的系统(包含手机),都必须具备涉及计算机系统最底层硬件资源(CPU内部资源、内存、外存、IO接口等)的操作(BIOS:基本输入输出系统)。
汇编语言固然可以直接作用于CPU底层(汇编语言又称低级计算机语言),但毕竟事无巨细都要面面俱到,太过繁琐了,编程效率也太低了。于是人们又开发了许多中级计算机语言(如C)和高级计算机语言。 直到编写出很多很多优化后的高效功能模块(积木块),定义好通信接口,供使用者直接调用,实现相应功能。现如今,编程,不过是根据需求选择相应功能模块搭搭积木而已(当然,要搭得好搭得妙,悟性灵性也必不可少)。只有开创性的大型软件架构(框架)的规划设计才真正属于高端技术。
至此,对于题目问题的已经有了答案,纵向而言(语言层次的提升方向,而不是扩大应用面),自底而上,语言层次的不断提升,都是对编程软件的贡献!而编程软件的不断凝聚、升华,终将形成自动化、智能化编程氛围。但是,智能化终究仅仅是集合了人类智慧并且受控于人类智慧。
如果有那么一天,智能化编程导致智能发散而反制人类,那将何尝不是人类的悲哀。
附录1) 长度:以字节计,1字节为8位二进数。为方便读写常表达为十六进数,4位二进数一组为十六进数,如二进数0000~1001及1010~1111 分别对应十六进数 0~9 及A~F 。咱们车牌号就是十进数不够用扩展为十六进数的。
附录2) 世界上第一台电子计算机埃尼阿克(ENIAC),诞生于1946年2月14日。ENIAC长30米,宽6米,高2.4米,占地面积约170平方米,重达30英吨,耗电量150千瓦。它包含了18000 个电子管(形似过去的长筒状灯泡,具备现在半导体管功能),计算速度是每秒5000次加法。
其他网友回答
记住:0和1→编程工具,再到到其他软件或者编程工具,编程工具也是软件的一种
其他网友回答
你这个问题和以前我想过的一个问题很类似:1.系统都是用类似于pe的引导盘安装的。2.可以用系统刻录引导盘。那第一个引导盘是怎么编写出来的呢。问题答案就是用纸带,上面刻出洞,向计算机输入010101这样的机器语言编写的。最后,计算机是如何识别0和1的机器语言呢,是电路上控制的。最原始的计算机上,基础的电路都是手工做的。这样就出现了最原始的操作系统。有了操作系统,就可以开发更复杂的软件和系统了。