首页 > 编程语言 ># 学期(如2024-2025-1) 学号(:20241405) 《计算机基础与程序设计》第5周学习总结

# 学期(如2024-2025-1) 学号(:20241405) 《计算机基础与程序设计》第5周学习总结

时间:2024-10-27 22:36:37浏览次数:6  
标签:字符 操作数 字节 20241405 2024 2025 说明符 指令 读取

这个作业属于哪个课程 https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP
这个作业要求在哪里 https://www.cnblogs.com/rocedu/p/9577842.html#WEEK05
这个作业的目标 Pep/9虚拟机、机器语言与汇编语言、算法与伪代码、测试:黑盒, 白盒
作业正文 https://www.cnblogs.com/sztheihei/p/18509133

教材学习内容总结

第6章 低级程序语言与伪代码

  1. Pep/9的基本特性:
    内存单元:65536字节存储空间,从0到65535编号。
    字节组成:每个字节由8位组成。
    字长:16位。
    中央处理器(CPU)组件:
    程序计数器(PC):存储下一条指令地址。
    指令寄存器(IR):存储正在执行的指令副本。
    累加器(A):存储数据和运算结果。
    存储器地址:从0000到FFFF,包括FFFE。
  2. 二进制和十六进制数:
    一个字节最大表示的十进制数是255(二进制11111111,十六进制FF)。
    一个字(16位)最大表示的十进制数是65535(二进制1111111111111111,十六进制FFFF)。
    有符号数范围:-32767到+32767。
  3. 指令格式:
    指令由8位的指令说明符和可选的16位操作数说明符组成。
    指令长度:1字节(无操作数说明符)或3字节(有操作数说明符)。
    指令说明符包含操作代码(opcode)和寻址模式说明符。
    操作代码长度:4位。
    寻址模式说明符:3位,决定如何解析操作数。
    立即寻址(i):操作数直接在操作数说明符中。
    直接寻址(d):操作数说明符中存储操作数的内存地址。
  4. 示例指令:
    一元指令:没有操作数说明符,长度为1字节。
    0000 :停止执行。
    1100 :将字(两字节)载入寄存器A中。
    1101 :将字节载入寄存器A中。
    1110 :存储寄存器A中的字。
    1111 :存储寄存器A中的字节。
    0110 :将操作数加到寄存器A中。
    1000 :从寄存器A减去操作数。
  5. 输入/输出 (I/O) 操作:
    Pep/9系统模拟键盘输入和屏幕输出。
    输入设备地址:FC15。
    输出设备地址:FC16。
    使用ASCII字符集表示字符。
    通过累加器进行字符的输入和输出操作。
  6. Pep/9模拟器:
    模拟器允许模拟Pep/9程序的执行。
    程序代码以十六进制格式输入,并以'zz'结束。
  7. 程序实例:
    显示了如何使用Pep/9机器语言指令在屏幕上显示字符。
    使用了载入、存储和停止指令。
    程序代码以二进制和十六进制表示。

第4章 键盘输入和屏幕输出
常用转义字符:
转义字符 含义 转义字符 含义
\n 换行(Newline) \a 响铃报警提示音(Alert or Bell)
\r 回车(不换行)(Carriage Return) " 双引号(Double Quotation Mark)
\0 空字符(Null),通常用作字符串结束标志 ' 单引号(Single Quotation Mark)
\t 水平制表(Horizontal Tabulation) \ 反斜线(Backslash)
\v 垂直制表(Vertical Tabulation) ? 问号(Question Mark)
\b 退格(Backspace) \f 走纸换页(Form Feed)
\ddd 1到3位八进制ASCII码值所代表的字符
\xhh 1到2位十六进制ASCII码值所代表的字符

C语言中使用 %c 格式符输入字符时可能遇到的问题:在C语言中, scanf 函数在读取输入时,会将换行符留在输入缓冲区中。如果后续使用 %c 读取字符,这个换行符可能会被错误地读取为字符,导致程序逻辑错误。
解决方法:
方法1:通过 getchar() 显式读取并丢弃换行符,确保后续的 %c 读取不会读取到错误的字符。
方法2:在 %c 格式符前加一个空格,这样 scanf 会自动忽略任何空白字符(包括空格、制表符和换行符),直到遇到非空白字符才停止读取,从而避免读取到换行符。
这两种方法都可以有效地解决由于缓冲区中的换行符导致的输入问题,确保程序能够正确地读取用户输入的字符。

教问题1:如何将算法转换为伪代码?

AI:

1.理解算法:
在开始之前,确保你完全理解算法的逻辑流程和目标。
确定输入和输出:
确定算法的输入(即算法开始时需要的数据)和预期的输出(即算法完成后应产生或返回的数据)。
2.描述操作:
用简单的英语描述每个步骤的操作。例如,“计算总和”,“检查是否满足条件”等。
使用伪代码关键字:
引入伪代码关键字,如 if, else, while, for, function, return 等,来表示不同的控制结构。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第三周 40 4 6
第四周 80 5 20
参考资料
《计算机科学概论(第七版)》,机械工业出版社
《C语言程序设计(第五版)》,高等教育出版社

标签:字符,操作数,字节,20241405,2024,2025,说明符,指令,读取
From: https://www.cnblogs.com/sztheihei/p/18509133

相关文章

  • CSP 2024游记
    day-1信心赛让我没有信心了呀B出的好难,C出近似算法,D出简单题。是想复刻CSP-S2023嘛ԅ(≖‿≖ԅ)day0水了一天。day1上午-J早上没睡好,开打还是迷迷糊糊的。看了眼B还是C,写了。然后就睡了20分钟,太困了QwQ.醒了(其实没睡着),把前三题写完了,大概已经1个小时了吧(我还是太菜......
  • 2024-2025 -1 20241326《计算机基础与程序设计》第五周学习总结
    这个作业属于哪个课程[2024-2025-1-计算机基础与程序设计(https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP))这个作业要求在哪里https://www.cnblogs.com/rocedu/p/9577842.html#WEEK05这个作业的目标学习pep/9虚拟机的相关知识,以及机器语言和汇编语言;完成计......
  • CSP-S 2024 游记/题解
    CSP-S2024去年S打成屎了,我要蓝√!!!!!!!!CSP怎么能不CS?CS了一个上午,顺便背了下快读。进厂!看见了退役的同学在做志愿者,祝他未来可期吧。也希望自己能够超常发挥。垃圾鼠标真难用。很好,全是传统题。只有T2开了两秒。T1,这不排个序然后优先队列乱搞就好了。5min过了,NOIP我来......
  • CSP2024
    大香蕉一条大香蕉,你的感觉真的很奇妙~本文实为CSP-S2024游记。loc=SC初赛本校争取到了考点,比较不错。然后就遇到自己的宿管监考。。致敬传奇完善程序9A1B。CSP-S被叠失眠debuff,凌晨才睡着。然后就非常倒闭,事实也确实是这样的。进考场,发现键盘拔不出来,但是旁边的人都......
  • 视野修炼-技术周刊第107期 | 2024 CSS 现状
    欢迎来到第107期的【视野修炼-技术周刊】,下面是本期的精选内容简介......
  • 2024-2025-1 20241329 《计算机基础与程序设计》第五周学习总结
    作业信息作业归属课程:https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP作业要求:https://www.cnblogs.com/rocedu/p/9577842.html#WEEK05作业目标:Pep/9虚拟机、机器语言与汇编语言、算法与伪代码、测试:黑盒,白盒作业正文:https://www.cnblogs.com/incamellia/p/18508448......
  • CSP2024
    场上就跟个大堂式一样。T3写完线段树之后才发现不用线段树,T2因为一些小细节写inf年。T3的拍写了巨久。最终导致T4根本没时间想和写了,然后也有一些细节,没考虑好。估分300-340。赛前打的一些模拟赛都是T4不会。现在不是练套路和简单题的时候,需要有做难题的实力才能脱颖而......
  • 2024/10
    27日今天是,十月二十七日,星期日十点起床,我是不是太健康了先把昨天的ds实验交了然后开始干实验室有点搞心态,下载了一个小时才发现下错模型了一小时两块钱,血亏两元然后是各种问题,先是build爆内存于是只好从师兄哪儿贺过来然后复制一半又爆硬盘,不得不......
  • 2024-2025 20241323 第五周学习总结
    赋值运算符(=):=用于将右侧的值或表达式的结果赋给左侧的变量。例如:inta=5;这行代码将整数5赋给变量a。赋值操作会改变变量的值,并返回一个与左侧变量类型相同的值(在大多数现代C编译器中,赋值操作的结果未使用是合法的,但不被推荐作为好的编程实践,因为它可能导致代码难以阅读和......
  • 2024.10.27~2024.11.3
    2024.10.27这么说吧,csp-s打的不好,是时候做出些调整了约法n章:1.在NOIP之前把ybt刷完,保守估计一天5道题2.一道题若超出一个半小时内没有A就换下一道题,并在博客中记录此题并整理思路,有时间补完3.模拟赛我的得分要有以下两种评估:切题得分和难题高分暴力得分4.禁用一个月B站,休息......