专栏导航
上一篇:第1章:用 VS2010 编写 WIndows SDK 程序
本节前言
对于本节所讲解的知识,有可能,你会需要时不时地参考本专栏之前的文章。真的遇到了需要参考之前的文章的知识点,请你自行查阅。
我呢,也会提到一部分的参考课节。但是呢,你不应该依赖于我的主动提及。最好呢,你自己能够多去了解和查看本专栏目录。
本节主要是一个自习课。
一. 本节内容参考
下面的链接,有本节的参考教材。
参考课节:Windows 编程专栏参考教材
本节内容,位于佩措尔德的教材之中。
请大家打开教材。
本节,大家需要去自习的,是佩措尔德教材的第 1 页到第 4 页的全部内容,和书上第 5 页的 1.1.2 节之前的内容。
注意,原教材中,第 4 页有明确标注页码,而第 1 章开头所在的页码,为第 3 页,此页没有明确标注页码。而教材的第 2 页是一个空页,位于第 1 章开头所在页面的前一页。而第 3 页往前翻两页,是第一部分的大纲与概览。
也就是,我们要求大家浏览第一部分的大纲,阅读第一章开头的内容,阅读教材 1.1 节开头的内容,以及阅读 1.1.1 节的全部内容。
二. 本节导读
(1)本节主要内容
本节内容,我觉得,其实没啥好说的。这一节,主要地,其实就是在教材 1.1.1 节里面,吃一下微软与 IBM 的一些个瓜。
这种内容有啥用吗?
实际上,用处不大。
但是,阅读这样的东西,还是可以让我们增长许多的背景知识。当你学完了 Windows API 知识的时候,再回头来看这些个瓜,也许,你会觉得很有意思。
而在第一次学习的时候,这可以说是一种休息,一种学习中的休息。
学习,其实也是需要节奏上的张弛有度的。
一味地学习难点知识,其实也是不好的。
张弛有度,劳逸结合,还是好的。
在下面的几个小节中,我会视情况来讲一讲某些个概念术语。
视情况,是说,有的概念,我能够比较了解,能够多说一些。有的概念,我自己也是掌握得比较模糊,因此,可能说的就少一些。
(2)Windows NT
Windows NT 是什么?
简单来说,Windows XP、Win7,Win8,Win10 和 Win11,都是属于 Windows NT 。如果以后出现了 Win12,Win13 等等的版本,大体上,它们也会是属于 Windows NT 的。
(3)精简指令集 RISC
这是在 CPU 设计领域,会用到的一个概念。英特尔的 CPU,使用的是 CISC,复杂指令集系统。
采用复杂指令集的 CPU,倾向于多设计一些个指令,以便让 CPU 可以用指令的方式,来完成更多的功
与复杂指令集系统相对应地,便是精简指令集系统,RISC 。采取这种指令集系统的人认为,计算机中,常用的指令不多。因而,某些个 CPU 设计者,便只保留真正需要用到的核心指令。而某些个复杂指令集系统中所包含的复杂指令,精简指令集采取使用多条指令来完成同一功能的做法。
虽说,采用精简指令集,来完成复杂指令集系统中某一个复杂指令的功能,它会需要更多的指令,但是呢,在当今的指令流水线技术的辅助之下,精简指令集,反而运行得更高效。
精简指令集技术的发展,也使得本来采用复杂指令集系统的英特尔,在内部实现上,也将其复杂指令拆解为精简指令了。
指令流水线是啥?在这里,我们不去展开,知道有这回事就行了。
本专栏不是来设计 CPU 的。我们会有其他的专栏,来讲解设计 CPU 的知识。
(4)字符模式
微软早期的系统,是 MS-DOS 系统,这是运行在字符模式的操作系统。操作系统是字符模式的,相对应地,它里面的程序,也是运行在字符模式的。
什么是字符模式?
现如今的 Windows 应用程序,都有应用程序窗口,有标题栏、菜单栏、工具栏、状态栏等等的东西,用户使用键盘和鼠标等等输入设备,与应用程序窗口及其标题栏、菜单栏、工具栏等等的元素打交道,以便和应用程序进行互动。
这种带有应用程序窗口、标题栏、菜单栏、工具栏等等的界面元素,并通过键盘鼠标等输入设备与之交互的程序,为图形界面程序。这种程序,所使用的用户交互接口,为图形界面接口,英文为 Graphics User Interface,简称 GUI 。
相对地,早期的 MS-DOS,它里面的程序,不通过应用程序窗口等等的图形元素与用户开展交互,它们是运行在类似于现如今的 Windows 的命令提示符、Powershell 界面中,总之,是运行在命令行界面中的。用户通过输入命令,来运行程序,与程序进行交互。
比如,我们按下【Win + R】快捷键,会弹出来一个窗口。
Win 键是什么?
图1
图1 中,用圆圈标注出来的东西,就是 Win 键。
图1 中,我展示的,是笔记本键盘中的 Win 键。我们再来看一看台式机的外接键盘所用的 Win 键。
图2
一般地, Win 键都是位于键盘的最下面一行按键中靠左边的区域的,并且会位于左 Ctrl 键与左 Alt 键之间。
按下了【Win + R】快捷键以后,弹出的窗口如下图所示。
图3
在图3 的红色框线所示的输入框里面,我们输入【cmd】,如下图所示。
图4
然后呢,我们点击【确定】按钮,接下来,会弹出来一个窗口,如下图所示。
图5
在图5 中,我们可以输入命令,来与 Windows 交互。
比如,我们可以在其中输入【dir】,如下图所示。
图6
输入的时候,注意中文输入法与英文输入法的问题。如果,输入的时候,你采用了中文的拼音输入法等等,按一下 Shift 键,就可以将英文输入到图6 所示的命令行界面了。
输入好了以后,按下回车键,结果如下图所示。
图7
图7 中的最后一行文本,【C:\Users\Administrator>】上方的内容,便是【dir】命令的执行结果了。
通过【Win + R】快捷键,然后在弹出的窗口输入【cmd】,然后点击【确定】按钮,弹出来的界面,它是 Windows 的命令提示符界面,它也是 Windows 里面的一种命令行界面。
而 dir,则是可以在 Windows 的命令提示符界面里运行的一条命令。
像这种的,通过命令提示符界面、 Powershell 界面等等的命令行界面,通过输入命令的方式,来与操作系统或者应用程序交互的程序运行模式,就是字符模式。
在 Windows 里面,这种字符模式,在命令提示符、Powershell 窗口里面还有所保留。但是呢,Windows 里面,字符模式不是主流。
相比于 Windows,Linux 操作系统则是将字符模式作为一种重要的,甚至是主要的程序运行模式。
如果打算深入学习程序设计的知识的话,Linux,是大家需要去接触与学习的东西。
(5)Visual C++ 6.0
我在上大学的时候,课堂上,老师演示 C 语言程序,还在用着 Visual C++ 6.0 。这个软件,它是微软的一个产品,简称 VC++ 6.0。在当时来讲,它的功能是非常强大的。不过,从 win7 开始,这个程序就有着兼容性的问题了,渐渐地,这个软件也就淡出了人们的视线。
现在,若是想要开发 Windows 程序,更为推荐的,是微软的另一款 IDE,也就是 Visual Studio 软件。
书上推荐的软件是 VC++ 6.0,这在作者写书的当时,它的确是很新的软件。不过,现在来讲,有点过时了。
我们的专栏里,会去使用的,是 Visual Studio 软件的 2010 版和 2019 版,其中,以 2019 版为主。
之所以我使用的是 Visual Studio 2019,而不是 2022,或者是更新的版本,是因为,我的电脑性能没那么强,担心带不动 2022 以及更高的版本,因此,我就使用了 2019 版。
如果你的电脑性能够强,那么,你自己使用 2022 或更高版本也是可以的。
不过,在学习阶段,为了方便与专栏保持同步,我们还是推荐你使用 Visual Studio 2019 。
结束语
本节呢,实际上没啥好说的。
不过呢,大家还是可以从这里,来了解一下我们的讲解风格。
以后,我们也很有可能会开展长期的合作啊。
我导读,我讲课,你学习着。
你有不懂的,你可以向我提问。
这应该会很有趣吧。