首页 > 编程语言 >2023-2024-1 20231404高伟光《计算机基础与程序设计》第5周学习总结

2023-2024-1 20231404高伟光《计算机基础与程序设计》第5周学习总结

时间:2023-10-29 20:22:47浏览次数:49  
标签:20231404 字符 操作数 读取 指令 高伟光 2024 寻址 内存

作业信息

属于课程 2023-2024-1-计算机基础与程序设计
作业要求 要求
作业目标 Pep/9虚拟机,机器语言与汇编语言,算法与伪代码,测试:黑盒,白盒
作业正文 此博客

教材学习内容总结

计算机概论:

  • 明白了pep9的一些基本逻辑
  • 知道了汇编语言与机器语言的区别
  • 会写简单的伪代码

c语言程序设计

  • 知道了printf和scanf的用法,记住了不可直接输出的特殊字符
  • 明白了scanf编写时的格式一致性
  • 牢记%c在读入地址时会读空格,回车,制表符。要前加空格

教材学习中的问题和解决过程

问题一:getchar()为何可以解决%c的读入问题?

  • 在C语言中,%c是用来读取一个字符的格式控制符。但是%c只会读取一个字符,而不会读取换行符或空格等字符。这就会导致问题,当我们使用%c读取一个字符后,输入缓冲区中可能还有其他字符残留,导致下一次读取时出现错误。而getchar()函数可以解决这个问题。getchar()函数会读取输入缓冲区中的下一个字符,并将其返回。如果输入缓冲区中没有字符可读,则getchar()函数会阻塞程序,直到有字符可读为止。使用getchar()函数可以很方便地解决%c的读入问题。我们可以使用getchar()读取一个字符后,再使用%c读取下一个字符。这样就可以确保每次读取%c时,输入缓冲区中只有一个字符,避免了残留字符的干扰。

问题二:立即寻址和直接寻址的区别?

  • 立即寻址(Immediate Addressing):立即寻址是指将操作数直接包含在指令中。在执行指令时,操作数的值可以直接从指令中获取,而不需要额外的内存访问。这种寻址方式适用于操作数是常数或小的立即数的情况。例如,MOV AX, 5是一条使用立即寻址的指令,将立即数5直接存储到寄存器AX中。
  • 直接寻址(Direct Addressing):直接寻址是指使用一个内存地址作为操作数的值。在执行指令时,需要从内存中读取操作数的值。这种寻址方式适用于操作数存储在内存中的情况。例如,MOV AX, [BX]是一条使用直接寻址的指令,将内存地址BX中的值读取到寄存器AX中。
区别:

立即寻址直接从指令中获取操作数的值,不需要额外的内存访问,因此执行速度较快。而直接寻址需要从内存中读取操作数的值,需要额外的内存访问,因此执行速度较慢。
立即寻址适用于操作数是常数或小的立即数的情况,而直接寻址适用于操作数存储在内存中的情况。
立即寻址的指令长度较短,因为操作数直接包含在指令中。而直接寻址的指令长度较长,因为需要包含内存地址。
立即寻址可以减少对内存的访问,节省内存带宽。而直接寻址需要频繁地访问内存,可能会对内存带宽造成压力。
需要根据具体的应用场景和需求来选择适合的寻址方式。

基于AI的学习

image

标签:20231404,字符,操作数,读取,指令,高伟光,2024,寻址,内存
From: https://www.cnblogs.com/gaoweiguang/p/17796311.html

相关文章

  • 2023-2024-1 20231421 《计算机基础与程序设计》第五周学习总结
    ------------恢复内容开始------------------------恢复内容开始------------作业信息作业要求:https://www.cnblogs.com/rocedu/p/9577842.html#WEEK05作业目标:自学《计算机科学概论》第六章、《c语言程序设计》第四章作业正文:教材学习内容总结一、《计算机科学概论》第六......
  • 2023-2024-1 20231307 《计算机基础与程序设计》第5周学习总结
    2023-2024-120231307《计算机基础与程序设计》第5周学习总结作业信息这个作业属于哪个课程<班级的链接>(如2023-2024-1-计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>(如2023-2024-1计算机基础与程序设计第5周作业)这个作业的目标<计算机科学概论第6章......
  • 2023-2024-1 学号20231315第五周学习总结
    学期:2023-2024-1学号:20231315《计算机基础与程序设计》第五周学习总结作业信息这个作业属于哪个课程2023-2024-1《计算机基础与程序设计》这个作业要求在哪里2023-2024-1《计算机基础与程序设计》这个作业的目标学习计算机科学概论第6章和《C语言程序设计》第4......
  • # 学期2023-2024-1 20231401 《计算机基础与程序设计》第五周学习总结
    学期2023-2024-120231401《计算机基础与程序设计》第五周学习总结作业信息这个作业属于哪个课程2023-2024-1-计算机基础与程序设计这个作业要求在哪里2023-2024-1计算机基础与程序设计第五周作业这个作业的目标自学教材:计算机科学概论第6章,C语言程序设计第4章并......
  • 2023-2024-1 20231417 《计算机基础与程序设计》第五周学习总结
    2023-2024-120231417《计算机基础与程序设计》第五周学习总结作业信息这个作业属于哪个课程2023-2024-1-计算机基础与程序设计这个作业要求在哪里2023-2024-1计算机基础与程序设计第五周作业这个作业的目标<关于机器语言与汇编语言,pep9的相关应用,循坏算法的了解与......
  • 2023-2024-1 20211327 信息安全系统设计与实现 学习笔记7
    学习笔记7顺序算法与并行算法线程的原理与优缺点线程管理函数线程同步实践过程顺序算法与并行算法顺序算法(SequentialAlgorithm)原理:顺序算法是一种线性执行的算法,它按照顺序一步一步地解决问题。这意味着每个操作都依赖于前一个操作的结果,只有在前一个操作完成之后才......
  • 2023-2024-1 20231406 《计算机基础与程序设计》第5周学习总结
    2023-2024-120231406《计算机基础与程序设计》第5周学习总结作业信息这个作业属于哪个课程<班级的链接>(如[2023-2024-1-计算机基础与程序设计](https://edu.cnblogs.com/campus/besti/2023-2024-1-CFAP)这个作业要求在哪里<作业要求的链接>(如2023-2024-1计算机基础......
  • 2023-2024-1 20231410刘珈岐 《计算机基础与程序设计》第5周学习总结
    2023-2024-120231410刘珈岐《计算机基础与程序设计》第5周学习总结作业信息这个作业属于哪个课程[2023-2024-1-计算机基础与程序设计](https://edu.cnblogs.com/campus/besti/2023-2024-1-CFAP)这个作业要求在哪里2023-2024-1计算机基础与程序设计第5周作业)这个......
  • 2023-2024-1学期 20231424 《计算机基础与程序设计》第5周学习总结
    作业属于的课程<班级链接>(2022-2023-1-计算机基础与程序设计)作业要求<作业要求链接>(2022-2023-1计算机基础与程序设计第一周作业)这个作业的目标《计算机科学概论》第6章和《C语言程序设计》第4章  计算机科学概论知道了伪代码是一种类似于编程语言的描述......
  • 2023-2024-1学期 20231424 《计算机基础与程序设计》第5周学习总结
    2023-2024-1学期20231424《计算机基础与程序设计》第5周学习总结作业信息作业属于的课程<班级链接>(2022-2023-1-计算机基础与程序设计)作业要求<作业要求链接>(2022-2023-1计算机基础与程序设计第一周作业)这个作业的目标《计算机科学概论》第6章和《C语言程序......