当前位置: 首页 > news >正文

计算机组成原理实验一(完整)

  1. 在VC中使用调试功能将下列语句运行的内存存放结果截图,每运行一句需截图一次。
#include<stdio.h>
int main()
{int a = 你的学号末两位-100; //0x?????????char b= 你的学号末两位-100;short c=你的学号末两位-100;unsigned int d = 你的学号末两位-100;int e[5]={你的学号末两位-100,你的学号末两位-99,你的学号末两位-98,你的学号末两位-97,你的学号末两位-96};float f1 = -11.375;float f2 = 0.1;a=1 ;//把a的次高字节变成EE ?(作业的要求是将a改成自己的学号!)return 0;
}

过程参考:
注意:每个变量有自己的数据类型,不同数据类型所占字节数也不同,具体长度参考下图

  • 求变量 a 的地址
    变量a的地址
  • 求变量 b 的地址
    变量b的地址
  • 求变量 c 的地址
    变量c的地址
  • 求变量 d 的地址
    变量d的地址
  • 求数组 e 的地址 (注意顺序!)
    变量e的地址
  • 求变量 f1 的地址
    变量f1的地址
  • 求变量 f2 的地址
    变量f2的地址
  • 求改变值后 变量 a 的地址 (在执行完a的赋值操作后,在左下角标注的地方双击,改成自己的学号,然后地址就会改变了)
    修改值后变量a的地址
    下面就是根据我自己学号末二位记录的值
#include<stdio.h>
#include "stdafx.h"
int main()
{int a = 16-100; //0xffffffacchar b= 16-100; //0xacshort c=16-100; //0xffacunsigned int d = 16-100; //0xffffffacint e[5]={16-100,16-99,16-98,16-97,16-96}; //0xffffffac 0xffffffad 0xffffffae 0xffffffaf 0xffffffb0float f1 = -11.375; //0xc1360000float f2 = 0.1; //0xcd3dcccccda=1 ;//把a的次高字节变成EE ? //这里填自己学号的那一块return 0;
}
  1. 某计算机存储器按字节编址,采用小端方式存放数据。假定编译器规定int 型、float型和 short型长度分别为32位、32 位和16 位,并且数据按边界对齐存储。某C 语言程序段如下:
   struct{ char a[3]; float b; short c;double d;short f;} record; record.b= 20.59375f;   record.c= -0xDCBA; 

若record变量的首地址为0xFF20,则
注意:填写答案时,如须填写英文字母一律使用大写。
(1)地址 0xFF25 中内容为 0x FF。(填十六进制数)
(2)地址 0xFF28 中内容为 0x E9。(填十六进制数)
(3)浮点型 record.b 是按 IEEE754 标准编码后存放。
(4)record.f 的地址为0x FF38。(填十六进制数)
(5)结构体record一共占 32 个字节的大小。(填十进制数)
通过使用VC编译器的调试功能查看内存中的数据,
(1)填写上述空格,并截图你的实验过程;
(2)对以上内存结果进行验算,写出你的理由。

变量record的地址
变量record.f的地址

仅供参考!

理由:根据下图可以知道,结构体record的内存占用32个字节,利用软件可以查到,结构体record的首地址为0x 0019ff30,而record.f的地址为0x 0019ff48,两个地址相差0x 18,所以假如record变量的首地址为0xFF20,则record.f的地址为0xFF38。

  1. 在VC中使用下列功能,打开每一项功能都截图一张,在图片中圈定打开的内容,说明这个功能要显示什么内容?(如下图所示)
    功能说明

示例

以上是题目描述,以下是参考

watch窗口
使用参考:
使用“监视”和“快速监视”窗口监视变量

Call Stack窗口
使用参考:
查看调用堆栈,并在调试器中使用“调用堆栈”窗口

Varibles窗口
使用参考:
检查自动和局部变量窗口中的变量

Registers窗口
使用参考:
在“寄存器”窗口中查看寄存器值(C#、C++、Visual Basic、F#)

Disassembly窗口
使用参考:
Visual Studio调试器指南—Disassembly窗口

  1. 在其他任意编译器中(Codeclock/Dev c++/VS)使用调试功能,将下列语句再次运行的内存存放结果截图
#include<stdio.h>
int main()
{int a = 你的学号末两位-100; //0x?????????int e[5]={你的学号末两位-100,+1,+2,+3,+4};float f1 = -11.375;return 0;
}

在其他任意编译器中(Codeclock/Dev c++/VS)复现(1)中的部分结果,并截图3张

注意,这里要求使用其他的编译器,为了教程通用,统一采用小熊猫C++进行演示,点击此处下载小熊猫C++(密码是f0tp,选择倒数第二个下载)
小熊猫C++调试教程

下面是我的调试过程:

  1. 变量 a 的地址
    变量a的地址
  2. 数组 e 的地址
    数组e的地址
  3. 变量 f1 的地址
    变量f1的地址

相关文章:

计算机组成原理实验一(完整)

在VC中使用调试功能将下列语句运行的内存存放结果截图&#xff0c;每运行一句需截图一次。 #include<stdio.h> int main() {int a 你的学号末两位-100; //0x&#xff1f;&#xff1f;&#xff1f;&#xff1f;&#xff1f;&#xff1f;&#xff1f;&#xff1f;&#x…...

【SSM】MyBatis(一.基础)

文章目录1.ORM2. 数据库表3. 入门程序3.1 创建项目3.2 开发3.3 一个比较完整规格的mybatis程序3.4 测试案例 junit3.5 对第一个mybatis使用junit测试3.6 集成日志框架logback3.7mybatis工具类编写1.ORM Object(JVM中的Java对象) Relational(关系型数据库) Mapping(映射) mybat…...

LInux指令之文件目录类

文章目录一、帮助指令二、文件目录类ls指令cd指令 &#xff08;切换目录&#xff09;mkdir指令&#xff08;创建目录&#xff09;rmdir指令&#xff08;删除目录&#xff09;touch指令&#xff08;创建空文件&#xff09;cp指令(拷贝文件)rm指令mv指令cat指令(查看)more指令les…...

【c++】:STL中vector的模拟使用及模拟实现

文章目录 前言一.使用库中vector常用接口二.vector的模拟实现总结前言 上一篇我们讲解了STL中的string的使用和模拟实现&#xff0c;这次我们就来讲解STL中的vector&#xff0c;vector相对于string来说模拟实现会难一些&#xff0c;难点在于迭代器失效问题和深浅拷贝问题。 首…...

C++ STL:vector的使用方法及模拟实现

目录 一. vector概述 二. vector接口函数的使用方法和模拟实现 2.1 vector类模板的成员变量 2.2 构造函数的使用和模拟实现 2.2.1 构造函数的使用方法 2.2.2 构造函数的模拟实现 2.3 析构函数的模拟实现 2.4 赋值运算符重载函数的使用和模拟实现 2.4.1 函数的使用 2.…...

naive UI 的upload组件自定义手动上传图片的base64位

<template><n-upload ref"uploadRef" action"#" :default-upload"false" :custom-request"myUpload"><n-button>点击选择文件</n-button></n-upload><n-button click"submitUpload"> 上…...

信创办公–基于WPS的PPT最佳实践系列(表格和图标常用动画)

信创办公–基于WPS的PPT最佳实践系列&#xff08;表格和图标常用动画&#xff09; 目录应用背景操作步骤图表常用动画效果&#xff1a;擦除效果表格常用动画效果&#xff1a;轮子效果应用背景 文不如表&#xff0c;表不如图。在平时用ppt做总结时&#xff0c;我们会经常用到图…...

Spring Bean实例化和初始化的过程

承接上文Spring Bean生命周期应用程序在运行过程中能否去读取当前系统的环境变量或系统属性?这里涉及到一个非常重要的接口Environment&#xff0c;System.getenv&#xff0c;System.getProperties都是获取当前系统环境变量&#xff0c;Environment接口的实现类AbstractEnviro…...

WorkTool企微机器人接入智能问答

一、前言 最新版的企微机器人已经集成 Chat &#xff0c;无需开发可快速搭建智能对话机器人。 从官方介绍看目前集成版本使用模型为 3.5-turbo。 二、入门 创建 WorkTool 机器人 你可以通过这篇快速入门教程&#xff0c;来快速配置一个自己的企微机器人。 实现的流程如图&…...

C导入正则库问题

环境 操作系统:win11 专业版 gcc: gcc (x86_64-posix-seh-rev0, Built by MinGW-W64 project) 8.1.0 编辑器&#xff1a;vscode 要求 在c中使用正则表达式 遇到的问题以及解决思路 C标准中并没有正则表达式库 从其他地方下载正则表达式库即可。 http://gnuwin32.sourcefo…...

尚融宝05-Node.js入门

目录 一、Node.js的概念 1、JavaScript引擎 2、什么是Node.js 二、下载和安装 1、下载和安装 2、查看安装是否成功 三、初始Node.js程序 1、运行一个程序 常见问题 2、文件的读取 3、服务器端程序 三、Node.js的作用 1、Node.js的应用场景 2、BFF 解决什么问题 …...

「SAP ABAP」OPEN SQL(八)【WHERE语句大全】

&#x1f482;作者简介&#xff1a; THUNDER王&#xff0c;一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学本科在读&#xff0c;同时任汉硕云&#xff08;广东&#xff09;科技有限公司ABAP开发顾问。在学习工作中&#xff0c;我通常使用偏后端的开发语言A…...

Ribbon负载均衡的原理(源码分析)

SpringCloud底层其实是利用了一个名为Ribbon的组件&#xff0c;来实现负载均衡功能的。1&#xff09;LoadBalancerIntercepor可以看到这里的intercept方法&#xff0c;拦截了用户的HttpRequest请求&#xff0c;然后做了几件事&#xff1a;1.request.getURI()&#xff1a;获取请…...

用sql计算两个经纬度坐标距离(米数互转)

目录 一、sql示例&#xff08;由近到远&#xff09; 二 、参数讲解 三、查询效果 - 距离&#xff08;公里 / 千米&#xff09; 四、查询效果 - 距离&#xff08;米&#xff09; 五、距离四舍五入保留后2位小数&#xff08;java&#xff09; 一、sql示例&#xff08;由近到远…...

C语言详解KMP算法

如果给你一个字符串 和 该字符串的一个子字符串 你能否快速找出该子字符串的所在位置我猜 这里会有一群杠精 说可以找到 真的吗 那下面这个字符串你可以一眼看出来吗你能找出来吗 如果能 算你眼神好 如果不能 那就看看接下来我怎么做你有想到暴力求解法吗&#xff1f;——来自百…...

redis在window上安装与自启动

需求&#xff1a; 客户window服务器使用redis&#xff0c;需要配置成在window服务中&#xff0c;并且可以随着电脑自启动服务。 下载 https://github.com/tporadowski/redis/releases打开上面的下载地址&#xff0c;这里我们下载zip压缩版本。 解压到待安装目录下&#xff…...

字符串匹配【BF、KMP算法】

文章目录:star:BF算法代码实现BF的改进思路:star:KMP算法&#x1f6a9;next数组&#x1f6a9;代码实现优化next数组最终代码⭐️BF算法 BF算法&#xff0c;即暴力(Brute Force)算法&#xff0c;是普通的模式匹配算法&#xff0c;BF算法的思想就是将主串S的第一个字符与模式串P…...

Leetcode.1616 分割两个字符串得到回文串

题目链接 Leetcode.1616 分割两个字符串得到回文串 Rating &#xff1a; 1868 题目描述 给你两个字符串 a和 b&#xff0c;它们长度相同。请你选择一个下标&#xff0c;将两个字符串都在 相同的下标 分割开。由 a可以得到两个字符串&#xff1a; aprefix和 asuffix&#xff0c…...

剑指 Offer II 033. 变位词组

题目链接 剑指 Offer II 033. 变位词组 mid 题目描述 给定一个字符串数组 strs&#xff0c;将 变位词 组合在一起。 可以按任意顺序返回结果列表。 注意&#xff1a;若两个字符串中每个字符出现的次数都相同&#xff0c;则称它们互为变位词。 示例 1: 输入: strs [“eat”,…...

spring-cloud-sentinel ---流控算法---review

计数器算法 计数器算法&#xff0c;限定每个固定时间能处理的请求总数&#xff0c;例如1分钟100&#xff0c;如果在第一个一分钟&#xff0c;总共请求60次&#xff0c;接着第二个一分钟&#xff0c;counter又会从0 开始技术&#xff0c;如果在1.5分钟的时候&#xff0c;达到了…...

从RAG到Agentic RAG 的进化之路

何为Agentic RAG? RAG系统, 为大模型补充了数据, 无论是实时数据还是私域数据. Agentic RAG系统, 更近一步, 为RAG系统添加了Agent的智能, 让AI不光只作用在查询这个阶段, 而是充分利用, Agent的计划(Plan), 自省(reflect), 工具调用(tools use), 编排(orchestrate)等等能力,…...

AI选包助手:让快马智能推荐并配置浏览器插件开发所需的npm依赖

AI选包助手&#xff1a;让快马智能推荐并配置浏览器插件开发所需的npm依赖 最近想开发一个浏览器插件&#xff0c;功能很简单&#xff1a;抓取当前网页的标题、主要文本内容和所有图片链接&#xff0c;然后整理成Markdown格式一键导出。作为一个前端开发者&#xff0c;我知道这…...

微信聊天记录永久保存终极指南:WeChatMsg免费工具完整解决方案

微信聊天记录永久保存终极指南&#xff1a;WeChatMsg免费工具完整解决方案 【免费下载链接】WeChatMsg 提取微信聊天记录&#xff0c;将其导出成HTML、Word、CSV文档永久保存&#xff0c;对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/…...

WeChatExporter:微信聊天记录安全备份与高效导出全指南

WeChatExporter&#xff1a;微信聊天记录安全备份与高效导出全指南 【免费下载链接】WeChatExporter 一个可以快速导出、查看你的微信聊天记录的工具 项目地址: https://gitcode.com/gh_mirrors/wec/WeChatExporter 一、问题诊断&#xff1a;微信数据安全的核心挑战 1.…...

厂房钢结构工程:从设计、制造到安装验收的关键要点全解析

一、什么是厂房钢结构工程&#xff0c;为什么越来越常见&#xff1f;厂房钢结构工程&#xff0c;简单说&#xff0c;就是以钢柱、钢梁、檩条、支撑体系、屋面系统和围护系统为主体&#xff0c;完成工业厂房、仓储车间、物流中心、生产车间及配套功能区建设的一类工程。相比传统…...

koanf命令行参数解析:高级POSIX兼容标志处理指南

koanf命令行参数解析&#xff1a;高级POSIX兼容标志处理指南 【免费下载链接】koanf Simple, extremely lightweight, extensible, configuration management library for Go. Supports JSON, TOML, YAML, env, command line, file, S3 etc. Alternative to viper. 项目地址:…...

如何快速掌握ViGEmBus虚拟手柄驱动:新手5分钟完全指南

如何快速掌握ViGEmBus虚拟手柄驱动&#xff1a;新手5分钟完全指南 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus 你是否遇到过这样的困扰&#xff1a;心爱的…...

【ZGC性能调优终极指南】:20年JVM专家亲授5大实战瓶颈突破法

第一章&#xff1a;ZGC核心机制与性能边界全景透视ZGC&#xff08;Z Garbage Collector&#xff09;是JDK 11引入的低延迟垃圾收集器&#xff0c;专为处理TB级堆内存与毫秒级停顿目标而设计。其核心突破在于并发标记、并发重定位与着色指针&#xff08;Colored Pointers&#x…...

3步解锁魔兽争霸III最佳体验:WarcraftHelper全方位优化工具指南

3步解锁魔兽争霸III最佳体验&#xff1a;WarcraftHelper全方位优化工具指南 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper WarcraftHelper是一款专为…...

intv_ai_mk11 GPU算力优化部署:7B模型在CSDN GPU实例上的高效运行方案

intv_ai_mk11 GPU算力优化部署&#xff1a;7B模型在CSDN GPU实例上的高效运行方案 1. 项目背景与价值 intv_ai_mk11是基于Llama架构的7B参数AI对话模型&#xff0c;专为中文场景优化设计。在CSDN GPU实例上部署这类中型模型时&#xff0c;面临的主要挑战是如何在有限显存条件…...