程序设计导引(一)

版权声明
本文原创作者:wby小菜盒
作者博客地址:https://blog.csdn.net/weixin_51037598/

程序设计导引(一)

程序设计导引概述

有几个重要的概念:程序;算法;高级语言

程序

  1. 程序的概念:计算机程序是一组计算机能识别和执行指令,运行于电子计算机上,满足人们某种需求(或为帮助用户解决问题的信息化工具。【程序是一个指令序列(或可理解为文档集合)
  2. 程序设计语言的概念:用于书写计算机程序的语言。人与计算机打交道时交流信息的一类媒介和工具,由语句(statement)组成。(注:代码需符合语言规范
  3. 大致运行过程:程序以某些程序设计语言编写,运行于某种目标结构体系上。打个比方,程序就如同以英语(程序设计语言)写作的文章,要让一个懂得英语的人(编译器)同时也会阅读这篇文章的人(结构体系)来阅读、理解、标记这篇文章。一般的,以英语文本为基础的计算机程序要经过编译、链接而成为人难以解读,但可轻易被计算机所解读的数字格式,然后放入运行。(come from 度娘)

算法

  1. 概念:算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。(百度解释)
    Wby暴力解释:算法即解决问题的方法,其可 以自然语言、流程图、程序(编程语言)等形式展现
  2. 评判算法好坏的因素:
  • 时空复杂度
    时空复杂度即为时间复杂度空间复杂度
    (1)顾名思义,一个为时间上的开销,一个是计算机内存空间的开销(简言之:占字节的多少)。
    (2)一般的算法不可兼顾两者,鱼和熊掌不可兼得。
    例:递归----时间复杂度低、效率高,但是空间复杂度高(一次又一次地为形参开辟内存空间)。
  • 计算机的运行范围
    (1)硬件(硬盘容量、CPU性能、内存容量等)是否支持、是否在其承受能力范围内、其性能是否达标等等
    (2)软件(如操作系统OS)

高级语言

  1. 计算机程序设计语言经过了从低级到高级的发展过程。
    语言处理程序经历了机器语言汇编语言高级语言三个层次。
  • 机器语言:计算机直接使用二进制形式程序语言或机器代码
  • 汇编语言一种面向机器的用符号表示的低级程序设计语言(助记符) 。相当于机器指令的助记符号,与机器语言很接近。
    【以上两者均受机器的限制,通用性不高】
  • 高级语言:易被人们理解,完全符号化的程序设计语言
  1. 计算机只能识别和执行机器语言,高级语言编写的程序(源代码)必须经过“翻译(都是系统程序----编译器或解释器)”才能被执行
  • 编译(编译系统):编译是指在应用源程序执行之前,就将程序源代码 “翻译” 成目标代码(机器语言)
    (1)利:其目标程序可以脱离其语言环境独立执行,使用比较方便、效率较高
    (2)弊:应用程序一旦需要修改,必须先修改源代码再重新编译生成新的目标文件才能执行,只有目标文件而没有源代码,修改很不方便
    (通常认为C为编译型语言)
  • 解释程序(python)解释一句执行一句不产生目标代码
    执行方式类似于日常生活中的 “同声翻译” ,应用程序源代码一边由相应语言的解释器 “翻译” 成目标代码(机器语言),一边执行
    (1)弊:效率比较低,而且不能生成可独立执行的可执行文件,应用程序不能脱离其解释器
    (2)利:这种方式比较灵活,可以动态地调整修改应用程序

总述详见程序设计导引【总述】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值