
电脑五大组成部分是运算器、控制器、存储器、输入设备和输出设备。
运算器:主要指CPU。
控制器:主要是各种电路及固件(声卡,显卡,网卡,BIOS,南北桥芯片等)。
输入设备:鼠标/键盘/人体学输入设备(例如手柄,手写类,麦克风等)。
输出设备:打印机/显示器/人体学输出设备(如手柄的力反馈,耳机等)。
内存储器:一般只有内存条,外存储器:硬盘,光存储设备,移动存储设备等。只要把程序输入进去让他自己运行输出结果就是
写程序的基本流程是
1把解决问题的方法变成算法。
2把算法写成程序
3输入给电脑
很基础吧?其实你还不如问具体的计算机语言如何学。比如C,vb之类
编译共分为四个阶段:预处理阶段、编译阶段、汇编阶段、链接阶段。
1、预处理阶段:
主要工作是将头文件插入到所写的代码中,生成扩展名为“i”的文件替换原来的扩展名为“c”的文件,但是原来的文件仍然保留,只是执行过程中的实际文件发生了改变。(这里所说的替换并不是指原来的文件被删除)
2、汇编阶段:
插入汇编语言程序,将代码翻译成汇编语言。编译器首先要检查代码的规范性、是否有语法错误等,以确定代码的实际要做的工作,在检查无误后,编译器把代码翻译成汇编语言,同时将扩展名为“i”的文件翻译成扩展名为“s”的文件。
3、编译阶段:
将汇编语言翻译成机器语言指令,并将指令打包封存成可重定位目标程序的格式,将扩展名为“s”的文件翻译成扩展名为“o”的二进制文件。
4、链接阶段:
在示例代码中,改代码文件调用了标准库中printf函数。而printf函数的实际存储位置是一个单独编译的目标文件(编译的结果也是扩展名为“o”的文件),所以此时主函数调用的时候,需要将该文件(即printf函数所在的编译文件)与hello world文件整合到一起,此时链接器就可以大显神通了,将两个文件合并后生成一个可执行目标文件。
DATA SEGMENT
LEN DB 10 (字符个数)
STR1 DB '0123456789' (字符1,单引号中可改,相应的LEN也要变化的)
STR2 DB '0123456789'
RESULT DB 0FFH
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV ES,AX
MOV CL,LEN
MOV CH,0
MOV SI,OFFSET STR1
MOV DI,OFFSET STR2
CLD
REPE CMPSB
JNZ LP_NO
MOV RESULT,56H
JMP LP_END
LP_NO: MOV RESULT,4EH
LP_END: MOV AH,4CH
INT 21H
CODE ENDS
END START
1 扎实的基础。数据结构、离散数学、编译原理,这些是所有计算机科学的基础,如果 不掌握他们,很难写出高水平的程序。据我的观察,学计算机专业的人比学其他专业的人更能 写出高质量的软件。程序人人都会写,但当你发现写到一定程度很难再提高的时候,就应该想 想是不是要回过头来学学这些最基本的理论。不要一开始就去学OOP,即使你再精通OOP,遇到 一些基本算法的时候可能也会束手无策。 2 丰富的想象力。不要拘泥于固定的思维方式,遇到问题的时候要多想几种解决问题的 方案,试试别人从没想过的方法。丰富的想象力是建立在丰富的知识的基础上,除计算机以外 ,多涉猎其他的学科,比如天文、物理、数学等等。另外,多看科幻**也是一个很好的途径 。 3 最简单的是最好的。这也许是所有科学都遵循的一条准则,如此复杂的质能互换原理 在爱因斯坦眼里不过是一个简单得不能再简单的公式:E=mc^2。简单的方法更容易被人理解, 更容易实现,也更容易维护。遇到问题时要优先考虑最简单的方案,只有简单方案不能满足要 求时再考虑复杂的方案。
以上就是关于程序的本质什么程序运作的本质原理是什么电脑为什么能运作程序怎么编写一个程序全部的内容,包括:程序的本质什么程序运作的本质原理是什么电脑为什么能运作程序怎么编写一个程序、C语言编译原理是什么、编写一个微机原理的程序,比较两个字符串是否相等。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)