C++_编程前奏
计算机硬件系统
计算机操作系统的五大组成部分
|
计算机操作系统的组成部分 |
构成 |
|
控制器 |
指令寄存器(IR)/程序计数器(PC)/操作控制器(OC) |
|
运算器 |
算数逻辑单元/累加器/状态寄存器/通用寄存器 |
|
存储器 |
主存储器/辅助存储器 |
|
输入设备 |
键盘/鼠标/扫描仪… |
|
输出设备 |
显示屏/打印机… |
计算机组成结构:

控制器,顾名思义就是计算机系统的指挥控制中心
指令寄存器(Instruction Register,IR)本质是存储部件,寄存器就是一个临时的存储介质。计算机将当前执行或者将执行的指令存储在该寄存器中;
程序计数器(Program Counter,PC)是用来保存下一步将要执行指令的位置;
操作控制器(Operation Controller,OC)负责将指令进行译码,产生控制信号,控制其他部件有序的运行;
具有运算能力是称为计算机的一个条件
运算器包括:算术逻辑卷单元/累加器/状态寄存器/通用寄存器
算术逻辑单元分为算术运算(加减乘除)和逻辑运算(与或非)
存储器按照功能可分为主存储器和辅助存储器
主存储器是中央处理器可以直接访问的存储器,用来存放当前运行的程序和相关数据
辅助存储器除了可以用来保存应用程序和数据以外,还可以扩充内存容量
控制器和运算器两个部件组成了计算机的中央处理器(CPU)
计算机操作系统
什么是操作系统?
是管理计算机硬件资源与软件资源的计算机程序
分时操作系统原理
就是给每个任务一定的时间片,于是将可以将计算机要处理的任务排队,在一定的时间片里,计算机就从该队伍里选择一个任务来处理,当时间片用完之后,计算机又从该队伍里选择新的任务来处理
编程语言
机器语言:是由二进制的0和1组成,高电平代表1,那么低电平就代表0(反之也可)
汇编语言:是由一些英文字母和字符串组成的用来表示特定的指令
高级语言:重用率高、可移植性强,可以分为编译型语言和解释型语言
面向结构编程设计思想:
以模块化设计为重心,将系统分为若干个子模块,从而实现对子模块的单独开发
三大基本机构:顺序结构/选择结构/循环结构
面向对象编程(OOD)设计思想:
面向对象的基本概念:
类(Class)类是一件事物抽象的特点
对象(Object)类是抽象的代表,那么对象就是实际存在的事物
继承(Inherit)让某种类型的对象获取另一种对象的特征
动态绑定(Dynamic binding)在程序执行期间判断实际执行的对象,在调用对象响应的方法
多态性(Polymorphism)表示的是不同对象所表示的形式也是不同的
消息传递(Message Pass)对象和对象之间需要传递信息,就需要用到消息传递机制
HelloWorld
#include <iostream> //包含iostream头文件
using namespace std;//声明命名空间std
void main(void) //程序的执行入口
{
cout << "welcome to C++!" << endl; //调用cout输出函数进行输出
}


Ctrl+F5调试程序
C++编程语言的特点
C++编程语言同时具有面向结构化的程序设计特点和面向对象的程序设计特点
1:C++应用范围十分广泛
2:C++为硬件级别的编程
3:C++编程的高效性
4;C++类库的支持
C++编程语言虽然不像Python语言一样有着严格的代码规范,但是为能够有好的排版就有必要添加缩进和空格
C++注释分为行注释和块注释
// 为行注释,可以在某行代码后面注释这行代码的意思
/* */ 块注释,块注释可以用在文件头部,对文件进行说明,或者注释掉一整段代码
C++_编程前奏的更多相关文章
- C Primer Plus_第6章_循环_编程练习
1.题略 #include int main(void) { int i; char ch[26]; for (i = 97; i <= (97+25); i++) { ch[i-97] = i ...
- C Primer Plus_第5章_运算符、表达式和语句_编程练习
Practice 1. 输入分钟输出对应的小时和分钟. #include #define MIN_PER_H 60 int main(void) { int mins, hours, minutes; ...
- C Primer Plus_第四章_字符串和格式化输入输出_编程练习
Practice 1.输入名字和姓氏,以"名字,姓氏"的格式输出打印. #include int main(void) { char name[20]; char family[2 ...
- C#泛型(C#_编程指南)CSDN学习整理笔记
1.1. 泛型概述 2.0版C#语言和公共语言运行时(CLR)中增加了泛型.泛型将类型参数的概念引入.NETFramework,类型参数使得设计如下类和方法成为可能:这些类和方法将一个或多个类型的指定 ...
- 国外一教授坦言,用这方法能迅速成为python程序员,但都不愿意说_编程小十
越来越多的人学习python,但你学习python用了多长的时间?#Python# 你知道如何才能迅速掌握并成为python程序员吗? 有这样的一位国外的教授说,要迅速成为python程序员,几乎 ...
- C Primer Plus_第10章_数组和指针_编程练习
1. /*rain.c 针对若干年的降水量数据,计算年降水总量.年降水平均量,以及月降水平均量*/ #include <stdio.h> #define MONTHS 12 #define ...
- C Primer Plus_第9章_函数_编程练习
1.题略 /*返回较小值,设计驱动程序测试该函数*/ #include <stdio.h> double min (double a, double b); int main (void) ...
- C Primer Plus_第8章_字符输入输出和输入确认_编程练习
1.题略 #include <stdio.h> int main(void) { ; printf("Please enter text here(end with Ctrl + ...
- 第010课_掌握ARM芯片时钟体系
from:第010课_掌握ARM芯片时钟体系 第001节_S3C2440时钟体系结构 S3C2440是System On Chip(SOC),在芯片省不仅仅有CPU,还有一堆外设. 至于有哪些外设,可 ...
随机推荐
- rabbitmq系列(四)死信队列
一.什么是死信队列 当消息在一个队列中变成一个死信之后,它将被重新publish到另一个交换机上,这个交换机我们就叫做死信交换机,私信交换机将死信投递到一个队列上就是死信队列.具体原理如下图: 消息变 ...
- window 查看端口 杀端口
最近写项目,总是出现端口被占用的问题,原来傻傻的把电脑重启一下,终于有一天受不了了,想要想办法解决.刚开始从网上找了好多教程,发现不行.开始自己尝试,终于,成功的将占用端口的进程杀掉.在此记录下过程( ...
- 3.python正则匹配不到内容时消耗大量内存
遇到问题:正常情况获取的网页源码可以通过正则表达式快速匹配到内容,,但是如果出现问题,没有匹配到的内容,正则就会一直回溯,导致内存激增,一直循坏查找. 解决思路: 一.如果能够有特殊内容可以标记,满 ...
- Alterations of brain quantitative proteomics profiling revealed the molecular mechanisms of diosgenin against cerebral ischemia reperfusion effects(大脑的定量蛋白质组学揭示了薯蓣皂苷元对脑缺血再灌注效应的分子机制)
文献名:Alterations of brain quantitative proteomics profiling revealed the molecular mechanisms of dios ...
- 告别炼丹,Google Brain提出强化学习助力Neural Architecture Search | ICLR2017
论文为Google Brain在16年推出的使用强化学习的Neural Architecture Search方法,该方法能够针对数据集搜索构建特定的网络,但需要800卡训练一个月时间.虽然论文的思路 ...
- vscode 配置c++记录
c_cpp_properties.json { "configurations": [ { "name": "MinGW", "i ...
- IdentityServer4源码解析_4_令牌发放接口
目录 identityserver4源码解析_1_项目结构 identityserver4源码解析_2_元数据接口 identityserver4源码解析_3_认证接口 identityserver4 ...
- cin.getline()的用法和坑
cin.getline()的用法和坑 cin.getline大致原型:**istream& getline (char* s, streamsize n, char delim='\n');* ...
- [LeetCode] 935. Knight Dialer 骑士拨号器
A chess knight can move as indicated in the chess diagram below: . This time, we place o ...
- Java工程师技能点梳理
从个人技术积累的角度,来看看一名合格的Java工程师在面试时所需要的知识技能. 1.基本语法 这包括static.final.transient等关键字的作用,foreach循环的原理等等.今天面试我 ...