汇编、c语言、c++的一些想法。
学习C++的过程中一直有懂一点和迷糊的情绪伴随。
这几天在学习C++的变量定义、变量声明、数据类型等等。很多时候,跟我想的内容不一样。经常是,只知道这个东西是这样子的。却不知道,这个东西能在程序中有什么功能,这个东西是怎么实现这个功能的。一直很迷糊,搞得自己一会儿就陷入死胡同了。没了学习的动力。
刚才中途停下来,看看计算机(个人觉得,还是计算机这个词语能够最贴切地描述computer。电脑这个词,有点不够格。)的控制史。以,机器语言,汇编语言,C语言,C++语言为线,清理了一下顺序。
一开始,我们控制计算机,是直接输入二进制语言(01010……),这个东西太难记,于是,人们利用替代法,发明了汇编语言,同时发明了一个转换器。在使用汇编语言过程中,{人们发现有很多功能都是频繁用到的,例如:向显示器输出…………;向内存写入……;人们就把这些通用的代码打包!以后用到的时候,直接使用,不用再重新编写了!打包的时候,说明了激活这个包的方法【需要在什么样的环境下使用,需要几个参数,参数的值、参数的类型等等】和这个包能够干的事情。}“{}”【这个里面的内容,是非常重要的!一直到现在,我们都在遵循着这个规律!不断地有新的包被开发出来】
然后,不断有新的汇编包被整理到一块儿。接下来,人们觉得汇编语言还是不方便记忆,于是就又利用替代法,发明了C语言,同时发明了一个转换器。
在使用C语言的过程中,人们有发现了一些代码的重复使用率很高,于是,又像汇编语言那时候那样,收集汇总那些通用的代码,打包,说明使用参数,包的功能。
接下来,人们又发现,C语言有缺陷,可以用更好的方法来控制计算机。于是,就发明了C++,同时发明了转换器。在使用C++语言过程中,人们又把重复使用的代码整理收集起来,打包。发布参数,公布功能。
机器码—(转换器)—汇编语言—(转换器)—C语言—(转换器)—C++语言
在学习过程中,有几个问题,是一定要注意的。
1.它是什么?这个问题在学习基础知识的时候就可以弄明白了。
2.它有哪些功能?这个问题在学习基础知识的时候,不用深究!这个问题是在代码练习的时候,要弄明白的事情。
3.它是如何实现这个功能的?这个问题涉及到汇编语言。在学会汇编语言后,这个问题就好弄懂了。不要在学习和练习中深究!
个人觉得,一定要把这3个问题处理好,不然容易迷糊。到什么阶段处理什么问题,不要提前处理!
-----------
上面的话,很可能有很多错误的地方,后面在学习中改进吧。
汇编、c语言、c++的一些想法。的更多相关文章
- Golang 汇编asm语言基础学习
Golang 汇编asm语言基础学习 一.CPU 基础知识 cpu 内部结构 cpu 内部主要是由寄存器.控制器.运算器和时钟四个部分组成. 寄存器:用来暂时存放指令.数据等对象.它是一个更快的内存. ...
- [汇编] C语言中嵌入汇编
>_<" 下面是在C语言中嵌入汇编的例子,下面是三点要注意的~ 1.内联式汇编 2._asm关键字 3.并不是所有中断都能被支持 #include<iostream> ...
- C语言程序设计概述
1 概论 1972年Dennis Ritchie发明了C语言,而后Dennis Ritchie又使用C语言重写了Unix系统,自那以后C语言逐渐受到了全世界大多数编程爱好者的喜爱,后期的主流操作系统L ...
- C语言函数参数压栈顺序为何是从右到左?(从左向右的话,碰到printf的会陷入死循环)
上学期学习了汇编语言,并在操作系统实验中使用了汇编+C语言混合编程,中间也了解了一些C语言与汇编语言的对应关系. 由于汇编语言是底层的编程语言,各种函数参数都要直接控制栈进行存取,在混合编程中,要用汇 ...
- C语言实现简易2048小游戏
一直很喜欢玩这个小游戏,简单的游戏中包含运气与思考与策略,喜欢这种简约又不失内涵的游戏风格.于是萌生了用C语言实现一下的想法. 具体代码是模仿这个:https://www.cnblogs.com/ju ...
- 【转】R语言知识体系概览
摘要:R语言的知识体系并非语法这么简单,如果都不了R的全貌,何谈学好R语言呢.本文将展示介绍R语言的知识体系结构,并告诉读者如何才能高效地学习R语言. 最近遇到很多的程序员都想转行到数据分析,于是就开 ...
- Go语言大神亲述:历七劫方可成为程序员!
“历劫1”:你坚信你可以用Go来做面向对象编程? 在经历了一次Go应用之旅之后,你可能就会开始思考:“怎么样才能让这种语言更像面向对象的编程语言?”因为你已经习惯了这种编程,你想要制作健壮的代码.想要 ...
- 关于C语言指针的一些新认识(1)
Technorati 标签: 指针,数组,汇编,C语言 前言 指针是C语言的精华,但我对它一直有种敬而远之的感觉,因为一个不小心就可能让你的程序陷入莫名其妙的麻烦之中.所以,在处理字符串时,我总是能用 ...
- 汇编和C/C++的混合编程方式
常用的有三种方式: 在C/C++代码中嵌入汇编指令 汇编调用C/C++ C/C++中调用汇编 实例一: 在C中嵌入汇编: void string_copy(char *dst,const char * ...
- ARM 汇编与C之间 的调用
一. 汇编调用 C 1. 初始化栈 2. 初始化BSS段 (BSS 段是C语言存放未初始化的全局变量,或者初始化为0 的全局变量) 3 .使用 r0 ,r1, r2, r3 给函数传参,如果多于 4 ...
随机推荐
- HBase的Write Ahead Log (WAL) —— API与基本概念
HBase的数据写入操作,会先记录到HLog中,再真正写入到MemStore中.前者是对写入友好的格式,后者是对查询友好的格式.所以前者吞吐量更高,写入成功率大,提高了系统的可靠性,“基本”可以实现宕 ...
- spring4+websocket+nginx详细配置
实现的版本jdk1.7.0_25, tomcat7.0.47.0, Tengine/2.1.1 (nginx/1.6.2), servlet3.0, spring4.2.2 使用maven导入版本3. ...
- Android单例线程池
package com.jredu.schooltong.manager; import java.util.concurrent.ExecutorService;import java.util.c ...
- position之fixed固定定位、absolute绝对定位和relative相对定位
什么是层模型? 什么是层布局模型?层布局模型就像是图像软件PhotoShop中非常流行的图层编辑功能一样,每个图层能够精确定位操作,但在网页设计领域,由于网页大小的活动性,层布局没能受到热捧.但是在网 ...
- linux 基础知识
一.命令的基本用法 (1).Linux里面的命令分为内置命令和独立的命令. (2).命令行的基本使用方法 Cli Syntax #命令和选项 ...
- 事务管理(下) 配置spring事务管理的几种方式(声明式事务)
配置spring事务管理的几种方式(声明式事务) 概要: Spring对编程式事务的支持与EJB有很大的区别.不像EJB和Java事务API(Java Transaction API, JTA)耦合在 ...
- Linux基础知识
1.url中不写端口号,默认就是80端口:本机是127.0.0.1或者localhost 2.用户管理 查看当前用户: id:可以查看当前用户:whoami:查看当前的用户:who:可以查看当前已经登 ...
- 采用MANIFEST.MF之jar报错ClassNotFoundException解法
检查n多遍也试了n多次,证明下面是MANIFEST.MF文件正确写法: Manifest-Version: 1.0 Premain-Class: cn.yandz.monitor.SizeOfObje ...
- Eclipse Building Workspace 解决办法
Eclipse 一直不停 building workspace... android开发论坛 juapk 完美解决总结 一.产生这个问题的原因多种 1.自动升级 2.未正确关闭 3.maven下载l ...
- 发生tcp丢包(拥堵、超时)重传
可以根据wireshark的Seq序列号和Ack序列号来进行详细分析. 可见,网络丢包(可能是网络拥堵.也有可能是骨干网上有"防火墙"故意随机丢包,因为这个服务器的IP放在国外)对 ...