P1 [crayon-6003a36a3b759889879990/] P2 [crayon-6003a36a3b76f779981620/] P3 [crayon-6003a36a3b772094758677/] SUMMARY 屏幕输出这一块,在之前的实验中已经做好了总结,参见 [lip id=699],此处不多作重复总结。 REFERENCE…
[BX] & loop 比第四章内容更少…… SUMMARY BX is known as the base register, as it could be used in indexed addressing. [crayon-6003a36a3c8cb995318736-i/] 循环控制变量,[crayon-6003a36a3c8d…
Chap. IV First Program 直接在debug输入指令执行有很多的局限性,第四章主要就是学习编写汇编语言程序来解决这些问题。 感觉这一章真的没多少东西 程序的诞生 compile -> link BASIS 基本结构: 感觉书上讲的不是很对,网络上的又有好几个版本。暂时先按课本上来吧。 [crayon-6003a36a3cb7…
P1 Details Answer 如图(不变) 还是如图 [crayon-6003a36a3cdd9127680796-i/] [crayon-6003a36a3cddf577751717-i/] [crayon-6003a36a3cde1258457730-i/] P2 Details Answer 如图(不变) 还是如图 [crayon-60…
P1 写代码,写代码,写代码。 没有清除屏幕,所以可能不怎么好看。 将源代码程序中字数据 0403H→修改为 0441H,再次运行. 没什么好说的,换个字符。 P2 循环实现 写代码,写代码,写代码。 debug验证 栈实现 写代码,写代码,写代码。 这里有几个注意(不过我不确定我写的是最好的那一种)。 [crayon-6003a36…
P1 编写代码,这里为了省事,直接使用了vim. 编译、连接、运行 可以看到屏幕上输出了[crayon-6003a36a3d52c485745853-i/] 将 [crayon-6003a36a3d532270145413-i/] 和 [crayon-6003a36a3d533595909050-i/] 中寄存器 [crayon-6003a36…
P1 根据老师修改过的实验内容,写代码。 书上的题目答案,依次为 [crayon-6003a36a3d852350072213/] P2 在这里可以看到,虽然我们没有向栈中push数据,但是栈中已经不是原先的空白栈了。 再仔细看一下的话,可以看到栈中实际上是保存了CS和IP的值的。 在使用T命令进行单步追踪的时候,产生了中断,为了保护现场,CPU将…
因为自己的疏忽所以错过了博客园的提交时间,弄得整个后续都十分尴尬。 P1 输入指令,注意十六进制数字在debug中不要带[crayon-6003a36a3da20260360520-i/] [crayon-6003a36a3da26197406211-i/] 指令看一下当前CS和IP的位置 [crayon-6003a36a3da2979552256…
Chap. III Registers & Memory Access summery 仅凭CPU的寄存器是很难完成什么复杂任务的,此时需要内存的访问。 endianness 实际上,就像鸡蛋的问题一样,没有技术上的原因来选择字节顺序规则。 (小端法)字数据的存-取原则:高-高 低-低,即 字数据的低位字节存放在低地址内存单元; 字数据的高…
此文总结第一、二、三单元所学。 因为前几节课没有去上,所以第一单元我可能不能非常正确地去总结,尽量按着老师的课件来看下去。 summary Chap. I BASIS 第一章都是计算机基础,或者可以说计算机组成原理的超级简略版? 机器语言 silly binaries 计算机可以直接识别、执行。不是给人写的东西。 不同种类的计算机其机器语言是不相通…