社区
C++ 语言
帖子详情
学习 C++primer 第6天 之 小问题。/。。
jinjunweiruan
2008-07-08 07:03:58
由于昨天做的都是练习,,,所以,每有问题。但有个一直困扰我的问题。
你说说,我门打进代码。。为什么编译器,它就能执行这个命令?就像WINDOW里的一样。。有个MESSAGEBOX。。它得到消息,它为什么就能去执行?它有不是人,能懂...
也 就 是 最 深成的原理。。。
谁 懂。。讲下啊。。。XX
...全文
292
36
打赏
收藏
学习 C++primer 第6天 之 小问题。/。。
由于昨天做的都是练习,,,所以,每有问题。但有个一直困扰我的问题。 你说说,我门打进代码。。为什么编译器,它就能执行这个命令?就像WINDOW里的一样。。有个MESSAGEBOX。。它得到消息,它为什么就能去执行?它有不是人,能懂... 也 就 是 最 深成的原理。。。 谁 懂。。讲下啊。。。XX
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
36 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
two_ears
2008-07-09
打赏
举报
回复
hoho,lz别光看这些大叔们云山雾罩的
要想学好,从基础做起,做个觉远和尚那样的高手
two_ears
2008-07-09
打赏
举报
回复
[Quote=引用 9 楼 summersdw1 的回复:]
由C++PRIMER联想到这个问题~只能说楼主你很强大~
[/Quote]
呵呵,这个孩子喜欢动脑子,确实不错
ppp_10001
2008-07-09
打赏
举报
回复
我的理解很简单----约定(或者说是规则)
我们先约定 有电代表什么(比如1),没电代表什么(比如0)
然后我们约定011101000代表什么(比如a)
然后我们约定int代表什么(比如 整数)
然后我们约定;代表什么(比如 分割)
然后我们约定 整数代表什么
.....
这样当我们写 int a ; 时计算就按照我们的约定记录:101000111011111011
在我们需要时它又按照我们的约定把101000111011111011解释为int a;
--
当然我们不可以定议/n表示换行
在我们需要时它又按照我们的约定把/n解释为换行......
我的表达能边是不是太差了??
哎.
五号智能
2008-07-09
打赏
举报
回复
[Quote=引用 13 楼 jinjunweiruan 的回复:]
12L这个我也知道,,我想知道,它机器为什么就能懂这些代码..
[/Quote]
代码是指令,是以命令形式令机器工作。
不是它懂,而是规定它这样操作。
输入一个二进制,这个数的每个位都代表一种状态,
有电无电。
假如10101010 加01010101, 0是无电1是有电。每个位都是一根电线
10000000代表加。
当你输入第一个数的时候,它从一组叫“数据总线”的电线通到寄存器当A中,把A中对应的电容充电。再输入一个数的时候它从“数据总线”通到寄存器B当中,把对应的电容充电。
输入指令加,它从“控制总线”,看清,走不一样的路了。走到逻辑电路集这里,把最左边的开关打开。这个开关是寄存器A和B之间的或门电路开关。输出端在C寄存器,完成了相加运算
逻辑电路有三种,或,与,非,三门,有初中物理的基础,就可以画出这个电路的电路图。
或门,完成的功能,是两个输入端一个输出端,把两个输入端做或运算输出。
与门,是进行与运算输出
非,是取反输出。
明白了最基本的东西,就应该知道了,用基本逻辑电路来做加法运算,用加法的补码运算法做减法运算。用二进制代替其它进制。用二进制从控制总线打开相应开关。
为了记忆方便,用符号来替代二进制数据和指令。这就是汇编的形成。
后来,为了更容易理解又产生了高级语言,C,C++。编译器的做用,把代码全变成二进制的。标记好数据和指令两类。放在文件里
当有指令让这个文件中的二进制指令运行。指令和数据便按照按排好的顺序(程序)一个一个输出,CPU(运算器与控制器)读来指令,打开相应的开关让数据走到相应的寄存器,打开相应的逻辑电路让寄存器中数据进行逻辑运算。
如果再不明白,你应该学一下初中物理,画出逻辑电路,然后用电容代内存。组装出一个逻辑计算器,就应该明白它的工作原理了
biosli
2008-07-09
打赏
举报
回复
其实计算机也很笨,他只能执行汇编代码。
编译成机器语言,在编译期编译器回把你的程序弄成汇编的,这期间每个函数有个地址,在连接的时候把你的函数地址挂上东西。
操作系统有一个统一的入口然后一行一行执行汇编代码,遇到函数就跳转到相应位置执行函数里面的汇编代码,执行完再跳出来。
有兴趣的话写段代码然后打开你IDE的汇编器,一行一行看看就明白了。
bendise
2008-07-09
打赏
举报
回复
可以参考十万个为什么
ribut9225
2008-07-09
打赏
举报
回复
该死的楼主,偶还以为什么小问题可以赚点分呢
路过
jinjunweiruan
2008-07-09
打赏
举报
回复
.....我只是想了解下。。。
不然很不舒服。。。。总感觉不舒服。。。
dwen20
2008-07-09
打赏
举报
回复
很明显楼主没有学过计算机硬件的知识,应该是个非计算机专业的,既然这样,建议楼主就不要研究
这些问题了,知道怎么编程就行了,除非你肯花大量的时间去了解哪些知识。
f22fbi
2008-07-09
打赏
举报
回复
关注LZ,帮助我更好的理解C++ Primer
NKLoveRene
2008-07-08
打赏
举报
回复
问得好,哈哈
jinjunweiruan
2008-07-08
打赏
举报
回复
12L这个我也知道,,我想知道,它机器为什么就能懂这些代码..
Darkneece
2008-07-08
打赏
举报
回复
有编译器或者解释器,把代码变为汇编,再变成机器语言
ymntomyimi8855
2008-07-08
打赏
举报
回复
看样子我们学校开的的课程不错嘛,虽然电工学那门课有点难学,但是能帮助我更容易理解计算机原理;
为什么计算机能知道该怎么做呢?
首先机器语言是计算机唯一以这种能被识别的语言;这也是最低级的语言,他们涉及到许多电工学东西,我就不多说了;
其次c++是一种高级语言,而且他还是面向对象化语言;但是计算机并不能识别这种语言,他必须转化成机器语言才能被计算机识别。
jinjunweiruan
2008-07-08
打赏
举报
回复
6L将到电容。。似乎 有 点懵懂。。。。。GO ON
kampan
2008-07-08
打赏
举报
回复
多思考总比稀里糊涂的把书看一遍强得多。
鱼C缸
2008-07-08
打赏
举报
回复
这就是语言与语言的支持
summersdw1
2008-07-08
打赏
举报
回复
由C++PRIMER联想到这个问题~只能说楼主你很强大~
mingguang7213
2008-07-08
打赏
举报
回复
这孩子不错
npuhuxl
2008-07-08
打赏
举报
回复
楼主似乎应该去研究一下计算机导论、计算机组成原理、汇编语言与接口、计算机操作系统.....
加载更多回复(16)
《
C++
Primer
Plus第6版中文版》
学习
笔记(第十章)
《
C++
Primer
Plus第6版中文版》
学习
笔记(第十章) 红字内容是有疑问或者没把握的。 绿字部分是比较重要,或者经过确认的
C++
Primer
Plus(第6版) 课后题答案
自己看书练习编写的
C++
Primer
Plus(第6版)课后题答案
C++
Primer
Plus 编程练习源码工程 第12章
C++
Primer
Plus 编程练习源码工程 第12章 ,这是本人自己
学习
书籍时写的编程练习的源码工程,供大家参考交流。
c++
primer
第五版第6章答案
c++
primer
第五版第6章答案
C++
Primer
Plus附录源码等文件.zip
C++
Primer
Plus第六版的课后题练习题
C++ 语言
64,647
社区成员
250,476
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章