首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

信息学奥赛|入门级考点—计算机基础知识集合(4章节)

信奥考点|1.9 计算机语言——程序设计语言

程序设计语言是用于编写程序的计算机语言,它按照特定的规则组织计算机指令,使计算机能够自动进行各种操作处理。

程序设计语言包含语法、语义。语法类似于人类的汉语或英语语法,表示构成语言的各个记号之间的组合规律。语义表示按照各种方法所表示的各个记号的特定含义。程序设计语言可以根据其特点分为机器语言,汇编语言和高级语言三类。

01

机器语言

机器语言,顾名思义就是机器认识的语言。计算最早出现的语言就是机器语言,计算机能够直接识别的语言,而且速度快,但缺点是难以被人类所理解和记忆。

机器语言用二进制代码来编写计算机程序的。因此又称二进制语言。例如用机器语言来表示“8+4”,是一串二进制码“00001000 00000100 00000100”。机器语言书写困难,记忆复杂,一般很难记忆。

02

汇编语言

汇编语言是第二代计算机语言,用一些符号代替机器指令所产生的语言称为汇编语言。它加入了许多便于记忆,理解和使用的特殊符号和单词来代替机器指令,例如MOV,SUB,ADD等,更加便于人类的使用。但是,用汇编语言编写的程序不能被计算机所识别,必须使用某种特殊的软件用汇编语言写的源程序翻译和连接成能被计算机直接识别的二进制代码。此种语言难以移植和推广,因此被用在底层。

03

高级语言

高级语言其实是相对于汇编语言的,它解决了汇编语言难以移植和推广的问题,基本脱离了计算机的硬件系统,拥有更强的逻辑设计和表达能力,更易于人类理解和使用。其中比较知名的高级语言就包括了java,c++,python语言等等。

计算机并不能直接接受和执行高级语言编写的源程序,源程序在输入计算机时,通过“翻译程序”翻译成机器语言形式的目标程序,计算机才能识别和执行。这种“翻译”通常有两种方式,即编译方式和解释方式。

编译方式:编译方式的翻译工作由“编译程序”来完成,它是先将整个源程序都转换成二进制代码,生成目标程序,然后把目标程序连接成可执行的程序,以完成源程序要处理的运算并取得结果。编译性语言:C/C++等

解释方式:  源程序进入计算机时,解释程序边扫描边解释,对源程序的语句解释一条,执行一条,不产生目标程序。解释方式的翻译工作由“解释程序”来完成。解释性语言:Java、Python等。

信奥考点|1.10 Win开发环境——Dev C++

Dev C++ 是一个 Windows 环境下的一个适合于初学者使用的轻量级 C/C++ 集成开发环境(IDE)。它是一款自由软件,遵守 GPL 许可协议分发源代码。它集合了 MinGW 中的 GCC 编译器、GDB 调试器和 AStyle 格式整理器等众多自由软件。

Dev C++ 使用 MinGW/GCC 编译器,遵循 C/C++ 标准。开发环境包括多页面窗口、工程编辑器以及调试器等,在工程编辑器中集合了编辑器、编译器、连接程序和执行程序,提供高亮度语法显示的,以减少编辑错误,还有完善的调试功能,能够适合初学者与编程高手的不同需求,是学习 C 语言和 C++ 的首选开发工具。

下载地址:

https://pan.baidu.com/s/1L65axvqjyTy6GxmmkUilWQ?pwd=1wid

新建项目和源文件,直接快捷键:Ctrl + N

信奥考点|1.11 Linux开发环境—CodeBlocks

CodeBlocks是一个开放源码的全功能的跨平台C/C++集成开发环境。CodeBlocks由纯粹的C++语言开发完成,CodeBlocks是一个跨平台的开源IDE,可以用来编写多种程序,而且不需要购买许可证,上手难度不高,是一款轻量却又不失强大功能的好软件。http://www.codeblocks.org/

      1) 创建文件的方式为点击左上角File->New->File。

2) 选择类别。

信奥考点|1.12 计算机编程环境gcc and g++

gcc and g++分别是GNU的c & c++编译器。gcc/g++在执行编译的时候一般有下面4步:

预处理,生成.i的文件[预处理器cpp]。

将预处理后的文件转换成汇编语言,生成文件.s[编译器egcs]。

由汇编变为目标代码(机器代码)生成.o的文件[汇编器as]。

连接目标代码,生成可执行程序[链接器ld]。

1.  gcc编译器简介

   gcc原名是GNU C Complier,支持C语言的编译链接,也支持C++、object-c等语言的编译链接。根据《深入理解计算机系统(第三版)》第1.2小节内容,gcc将一个源程序文件转换为最终的可执行程序需要经过预处理、编译、汇编、链接四个阶段。

2. 常见的编译选项

 cc和gcc 命令是一样的,只是gcc命令的简化。另外,对于C++程序则使用g++命令来执行。

   gcc -E :进行预处理,默认将处理结果输出到标准输出设备上,如电脑屏幕。可以结合-o参数,将结果输出到.i文件中。

   gcc -s :进行-编译处理,生成.s为后缀的汇编语言文件;

   gcc -c :进行汇编处理,生成.o文件;

   gcc   :生成可执行文件,默认生成的可执行文件名为a.out。可以结合-o生成指定的名称;

   gcc  -v :  可以查看gcc的版本号;

   gcc -wall:尽可能给出更多地警告;

3. 示例

  但在实际中,我们通常不会一步一步的执行gcc -E、gcc -s 、gcc-c ...,而是直接"gcc hello.c"生成可执行文件,默认生成的可执行文件名为a.out。下面示例是C++程序hello.cc,使用"g++ hello.cc"一步生成可执行文件。

4. C++11标准

C++11标准在2011年8月份获得一致通过,这是自1998年后C++语言(也就是C++98标准)第一次大修订,对C++语言进行了改进和扩充。随后各编译器厂商都各自实现或部分实现了C++中的特性。

NOI基础知识题库|共三章 第1章.竞赛环境

注意:NOI 笔试题目将完全出自本题库,一般包括45道单项选择题和5道多项选择题。

Part I. 竞赛环境

1.NOI机试使用的操作系统是:Linux

2.Linux中为文件改名使用的命令是:mv  

3.在 Linux中返回上一级目录使用的命令是:cd ..

4.在 Linux中删除当前目录下的 test目录的命令是:rm -r test

5.当前目录下有一个编译好的可执行文件 a.out,执行它使用的命令是:./a.out

6.使用高级语言编写的程序称之为:源程序

7.在 NOILinux系统中可以用来调试程序的程序是:gdb

8.在 Linux系统中,文件夹中的文件可以与该文件夹同名吗:可以

9.Linux系统中杀掉名为 test的后台进程的命令是:killall test

10.Linux系统中可以查看隐藏文件的命令是:ls -a

11.Linux系统中编译 C++程序的编译器是:g++

12.Linux系统中,将当前目录下的文件名打印到tmp文件中的命令是:ls>tmp

13.Linux系统中,测量当前目录下程序 test运行时间的命令是:time ./test

14.vim编辑器中,强制退出不保存修改应当输入::q!

15.im编辑器中,强制退出并保存修改可输入以下三种命令之一::wq、ZZ、:x

16.im编辑器中,定位到文件中第 12行应当输入::12

17.im编辑器中,在文件中查找字符串“12”应当输入:/12

18.使用 g++ 编译 C++ 程序时,生成调试信息的命令行选项是:-g

19.使用 g++ 编译 C++ 程序时,生成所有警告信息的命令行选项是:-Wall

20.使用 g++ 编译 C++ 程序时,只编译生成目标文件的命令行选项是:-c

21.使用 g++ 编译 C++ 程序时,指定输出文件名的命令行选项是:-o

22.如果 C++ 程序中使用了 math.h中的函数,在用 g++ 编译时需要加入选项:-lm

23.Linux系统中具有最高权限的用户是:root

24.在 Linux的各个虚拟控制台间切换的快捷键是:Ctrl+Alt+Fn

25.在 NOI Linux中,从字符控制台切换回桌面环境使用的快捷键是:Ctrl+Alt+F7

26.在 NOILinux中默认使用的 Shell是:bash

27.在 Linux中查看当前系统中的进程,使用的命令是:ps

28.在 Linux中查看进程的 CPU利用率,使用的命令是:ps

29.在终端中运行自己的程序,如果进入死循环,应当如何终止:Ctrl-C

30.可执行文件 a.out从标准输入读取数据。现有一组输入数据保存在1.in中,使用这个测试数据文件测试自己的程序的命令是:./a.out

31.可执行文件 prog_1输出运行结果到标准输出。则将输出结果保存到文件 1.out中使用的命令是:./prog_1>1.out

32.使用主机“重启”键强行重新启动计算机,可能会对系统造成的后果是:文件系统损坏

33.在 Linux系统中,用于查看文件的大小的命令是:ls -l

34.当前目录中有如下文件:

-rw-r--r--    1 user None    8.7K Jul 2 16:35 foobar

-rw-r--r--    1 user None    93 Jul 2 16:35 foobar.c++

-rwx------    1 user None    144 Jul 2 16:35 foobar.sh

其中,可以执行的文件是:foobar.sh

35.评测系统中对程序源文件大小的限制是:小于 100KB

36.如无另行说明,评测系统中对程序使用内存的限制是:以硬件资源为限

37.Linux下的换行字符为:\n

38.终止一个失去响应的进程($pid代表进程号)的命令是:kill$pid

39.Linux中是否区分文件和目录名称的大小写:

40.选手在 NOI机试过程中是否禁止使用网络:

41.为源代码文件 my.cpp创建一个备份 mycpp.bak时,使用的命令是:cp my.cpp mycpp.bak

42.调试程序的方法有:单步调试、使用 print类语句打印中间结果、阅读源代码。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230415A00SVE00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券