- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我刚刚开始用 C 语言编程,我被一个短语所困扰,即 C 的主要功能包括对内存的低级访问任何人都可以解释这是什么意思。
最佳答案
计算机以机器代码(零和一)运行。如果您在十六进制编辑器中打开程序,或者查看任何讨论通信的硬件手册,您将看到 [0-9A-F][0-9A-F]
范围内的许多符号。 ,这是以 16 为基数而不是以 2 为基数的机器代码。用机器代码编写程序很难!将此视为地面 0;您编写的每一位内容都将在计算机硬件上运行。
机器码是一系列指令;在大多数计算机(例如台式机或笔记本电脑)上,它们是 instructions based on x86 ,并且这些字节是由这些指令组装而成的。这些指令是用汇编代码编写的!这两个主题都是非常简短的介绍,如果您有兴趣,请阅读更多相关内容,但本质上它们允许直接访问寄存器和硬件。同样,每个步骤都是直接运行的,但它稍微更抽象,因为它允许我们开始使用整个字母表!但它必须经过编译才能在处理器上运行。
C 不是汇编代码,它主要以人类形式可读。 C 本质上是一种名为 B 的较旧语言,具有类型系统(int、char 等) - 并且 B 基本上是汇编的友好语法。这就是为什么你可以在很多 C 语句中跳过类型,它默认为 int
.
C 不做的是:
指针允许您直接修改内存,并且本质上您想要做的事情是可能的(无论是好的还是坏的方式)。许多 C 方法编译为少量汇编指令,尽管它提供了巨大的能力,但它比高级语言需要更多的工作 - 其中许多可能在汇编之前编译为 C。
把它想象成一个金字塔;沙漠是地面/机器代码,基础是汇编,它坚硬而强大,但需要大量工作,C 位于其之上,仍然处于较低水平,需要大量工作,但比做要容易得多根据!将它们与位于更高级别之上的 Java 和 C# 进行比较,这应该可以回答问题。这是一个抽象概念,对于该语言来说实际上没有多大意义。
关于c - c中的低级访问是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57941178/
如何在页面内容对象流内的 PDF 页面上居中对齐文本。 从这个开始: q 0 Tr /Helv 12 Tf BT 1 0 0 1 10 10 Tm (Hello)Tj
关闭。这个问题是opinion-based 。目前不接受答案。 想要改进这个问题吗?更新问题,以便 editing this post 可以用事实和引文来回答它。 . 已关闭 9 年前。 Improv
我正在尝试用简单的工具编写自己的 printf。 这是 printf.c 的代码: #include "printf.h" uint8 pos_x=0, pos_y=0; void printf(ch
我正在尝试在 PDF 中呈现文本。我可以渲染基于矢量的图形,但我也想用文本来陪伴它。 在下面提供的测试代码中,文件(保存为 .pdf 时)将通过矢量图形绘制在左上角显示“测试”。 我想使用以下基于文本
有没有办法在比标准的“lua_pcall”函数调用更细粒度的级别上从 C/C++ 程序运行 Lua 代码?理想情况下,我希望能够遍历一系列低级字节码指令(假设它有这样的东西)并一个一个地运行它们,这样
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
这个问题在这里已经有了答案: Is short-circuiting logical operators mandated? And evaluation order? (7 个答案) 关闭 9 年
我想在 C# 中的单独线程上运行低级键钩来检测某些热键。我该怎么做? 最佳答案 如果你只需要这个键盘钩子(Hook)来检测热键,那么你不应该使用钩子(Hook)。 Windows 通过 Registe
我的应用程序索引最终用户计算机上所有硬盘驱动器的内容。我正在使用 Directory.GetFiles 和 Directory.GetDirectories 递归处理整个文件夹结构。我仅索引了几种选定
我们正在尝试通过多部分文件上传过程上传文件。通过使用下面给出的代码: while (!feof($file)) { $result = $s3->uploadPart(array( 'Buck
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我正在使用 STM32CubeMX 为 STM32F103 微 Controller 创建一个空白项目。使用 HAL 驱动程序(默认),我得到了一个运行速度非常快的闪烁示例,但我想尝试 LL(低级)驱
如何使用 GoogleAppEngine Low Level API 自动将实体 (com.google.appengine.api.datastore.Entity) 读取到对象中? 有没有什么神奇
我正在寻找在 Tensorflow 中使用 LSTM 单元的 RNN 的低级实现。我已经实现了几个使用低级 API 的前馈网络。这对我理解 ANN 的内部工作原理有很大帮助。我可以对 RNN 做同样的
更新:如果代码:我刚刚成功击败了自己的 32: void test(char *file_char, unsigned int size) { char* file_ = file_char;
作为一个小型(大型)业余爱好项目,我着手用 C# 制作一个(非常原始的)ssh-2.0 客户端。这是为了探索和更好地理解 DH 并帮助提高我对加密的熟悉度:) 根据 RFC 4253,我已经开始这样的
我正在尝试使用 Fuse 低级 API 实现基本文件系统。用于基本的读/写/mknod 操作。如果有人能指出一些示例,将不胜感激,没有关于 fuse 低级 api 的文档。 任何帮助将不胜感激! 最佳
我所拥有的是直接访问 Atmel CPU 上的四个 JTAG 接口(interface)引脚。 我需要的是低级 C 代码来调整这些引脚并实现两个功能: ReadMemoryWord(address)
我正在开发一个由多个部分组成的程序,这些部分相互构建。第一个程序必须从文件中读取内容并将由空格分隔的内容写入新文件。程序二应该采用这个单词,并根据它是以元音还是辅音开头的规则添加pig latin,并
我想对 yml 文件中的值进行一些处理。有人建议我使用snakeYAML的low-level API以此目的。因此,我使用它编写了一些代码,但由于以下原因,我几乎陷入困境。 这是我编写的代码: pub
我是一名优秀的程序员,十分优秀!