腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
为什么
我
不
能在
指令
组合
中
使用
虚拟
寄存器
变量
?
、
、
我
试图通过一次执行多个操作,利用
指令
组合
使
我
的LLVM IR代码更具可读性。
我
有四个
虚拟
寄存器
变量
,
我
想将它们加在一起并将结果存储到一个%sum
变量
中
。= add i32 add (i32 %3, i32 %4) } 这段代码包含了将多个
虚拟
寄存器
<em
浏览 17
提问于2020-07-26
得票数 0
1
回答
对于从x86到x86的仿真,QEMU是否
使用
相同的主机
寄存器
作为客户
寄存器
?
、
、
、
我
正在研究Bochs和QEMU之类的仿真器是如何工作的,并且有一个问题--如果
我
在x86主机上仿真x86来宾操作系统,并且来宾操作系统执行一些分配
寄存器
的
指令
(例如,mov eax3),是否可以保证或者甚至有可能将该值实际分配给仿真器运行的代码
中
的实际硬件上的eax
寄存器
?
我
假设没有理由
不
这样做,因为QEMU进程是它自己的独立进程(因此它不必与任何其他进程共享通用
寄存器
),而且主机和来宾体系结构是相同的,因此具有相同的通用
寄存
浏览 1
提问于2016-12-08
得票数 3
1
回答
转换为LLVM IR:如何创建
虚拟
寄存器
而不是分配堆栈
变量
?
我
正在努力将另一个IR转换为llvm IR。a = 1;a = a + 1; 现在,
我
使用
alloca在
我
的IR
中
创建
变量
(这里是"a“和"b")。然而,alloca可能太重了,它会引入大量的加载存储
指令
。如果函数很大,这将是一个问题。实际上,对于我的例子,大多数
变量
都是
寄存器
宽度。所以我只想让它们成为一个有名字的
虚拟
寄存器
浏览 0
提问于2012-10-23
得票数 1
回答已采纳
1
回答
注册
虚拟
机和加载/存储架构?
、
、
、
作为一个学习练习,
我
想在C
中
实现一个
虚拟
机(
寄存器
机器,而不是堆栈机器)。这种加载/存储架构是否适合
虚拟
机?如果没有,还有什么可供选择的呢?少量的
寄
浏览 1
提问于2017-03-23
得票数 3
2
回答
将文字移至ES
寄存器
、
、
我
有这部分代码:mov es, axmov es, 0x100 nasm告诉
我
我
做了一个invalid combination
为什么
?
浏览 5
提问于2015-05-20
得票数 3
回答已采纳
1
回答
如何
使用
有限数量的
寄存器
存储多个
变量
?
、
我
编写了一个简单的
虚拟
机,其中包含操作堆栈的
指令
,将堆栈值存储到
寄存器
中
,将
寄存器
值加载到堆栈
中
,将值从
寄存器
移到
寄存器
并设置
寄存器
值.
我
试图编写一种非常简单的语言来编译这个VM字节码,
我
还没有做过从一个地址跳到另一个地址的
指令
,但是
我
觉得VM已经足够生成字节码来存储
变量
值了。
虚拟
机有7个
寄存器</em
浏览 2
提问于2015-10-20
得票数 1
回答已采纳
1
回答
当实现在MIPS
中
循环循环时交换的函数时,是否需要$s?
、
、
t0, 4($t1) // v[k+1] = reg $t0 (temp) jr $ra // return to calling routine
我
正在学习计算机架构通过几个过程,我们了解到不应该更改的值是
使用
堆栈指针存储的,或者存储在
中
。但是,在上面的代码
中
,排序函数的参数v[] ($a0)和n($a1)
使用
堆栈指针存储在$s0 $s1
中
,在运行最内部的循环$s0 in $a0之前,数
浏览 6
提问于2021-10-09
得票数 0
回答已采纳
6
回答
在C
虚拟
机
中
实现
寄存器
、
、
、
我
已经用C写了一个
虚拟
机作为
我
的爱好项目。此
虚拟
机执行的代码与英特尔语法x86汇编语言非常相似。问题是这个
虚拟
机
使用
的
寄存器
只是名义上的
寄存器
。在
我
的VM代码
中
,
寄存器
的
使用
方式与x86
寄存器
类似,但机器将它们存储在系统内存
中
。在VM代码中
使用
寄存器
比
使用
系统内存不会提高性能。(
我</
浏览 0
提问于2011-01-25
得票数 6
回答已采纳
2
回答
为什么
下面的c函数与asm代码相同?
、
有人能给我解释一下
为什么
下面的c代码等同于asm代码吗? a=(b*10)+(5/(-e));
为什么
我们要把b的值放在ecx
寄存器
中
。
浏览 1
提问于2011-12-11
得票数 3
3
回答
为什么
JVM基于堆栈,Dalvik VM基于
寄存器
?
、
、
、
、
我
很好奇,
为什么
Sun决定使JVM基于堆栈,而Google决定使DalvikVM基于
寄存器
?所以Android的家伙们想,“嘿,这太低效了,我们现在就去找一个基于
寄存器
的
虚拟
机吧……”?但是等等,有多个不同的android设备,Dalvik的目标是多少个<e
浏览 1
提问于2010-04-27
得票数 104
回答已采纳
1
回答
x86汇编MOV
指令
-
寄存器
到
寄存器
,内存到内存
、
、
、
众所周知,MOV
指令
允许
寄存器
注册移动,而内存到内存移动是不可能的。
为什么
会这样呢?
我
读过,内存到内存的移动是不允许的,因为它使CPU变得复杂,并且任何给定的
指令
都必须处于读模式或写模式
中
。
为什么
RAM必须处于读模式和写模式?怎么可
能在
一条
指令
中
从
寄存器
而不是从RAM
中
读写呢?
浏览 1
提问于2015-08-09
得票数 1
1
回答
如何
使用
addu在MIPS
中
添加两个
变量
?
我
正在尝试将下面的python代码转换为等效的MIPS代码。Y = int(input())下面是
我
编写的MIPS代码。,xsyscalladdu $a0,x,ysyscall x: .space 4当我组装这段代码时,
我
得到了错误:"x":操作数类型不正确
我
正在
使用
MARS 4.5软件编写这些代码。有人能告诉
浏览 2
提问于2020-06-04
得票数 0
1
回答
MIPS
中
的数据节和文本节
、
、
我
是MIPS的新手,
我
发现大多数情况下,我们必须定义一个数据部分和一个文本部分。
我
可以理解这一点,因为它就像定义一个
变量
和分配
指令
一样。但是
为什么
要写".data“和".text”呢?有没有可
能在
不
写下".data“和".text”的情况下用MIPS编写代码?例如,当我编写一个只处理
寄存器
的程序时,
我
现在甚至不需要在数据部分定义任何东西;
为什么
我</e
浏览 2
提问于2018-01-29
得票数 1
回答已采纳
1
回答
虚拟
机(用于执行PL)是否为字节码在一个连续数组上操作?
我
经常在Java、Python和Lua等编程语言的
虚拟
机上阅读。它们都有字节码的概念,将源代码翻译到
虚拟
机(基于
寄存器
或堆栈)上是可执行的。现在,在x86体系结构
中
,所有代码都驻留在内存
中
,它可以
使用
CPU的地址空间进行寻址。
指令
指针
寄存器
指向当前正在执行的内存
中
的位置。跳转修改这个
指令
指针
寄存器
,但基本上软件在内存线性化为一块RAM。有了
虚拟
机,
我</e
浏览 0
提问于2016-01-04
得票数 4
1
回答
LLVM访问
变量
、
、
我
知道如何在LLVM代码
中
存储int
变量
'x‘,
我
将
使用
以下命令:如果
我
想把'%x‘拉出来并在add这样的命令中
使用
它,
我
该怎么做呢?
浏览 0
提问于2018-09-25
得票数 1
2
回答
什么是LLVM IR
中
的“移动”操作码?
、
、
我
是LLVM IR的新手,
我
试图在LLVM IR
中
模拟一些x86
指令
。move %eax, %ebx
我
是LLVM IR新手,也许我会花很长时间在这个“模拟”工作上,关于LLVM应该有什么最好的参考呢?如果有人能帮我,
我
真的很感激。谢谢!
浏览 10
提问于2015-06-27
得票数 0
回答已采纳
1
回答
x86
为什么
在移动一个
变量
时,
我
一直在al
寄存器
中
得到CD
、
、
、
、
但基本上,每次
我
使用
MOV
指令
,通过一个
变量
来
寄存器
,
寄存器
显示CD。但是当我
使用
一个实际的数字时,
寄存器
会显示这个数字吗? ? mov ax,@data是否意味着将数据段内存地址移动到ax
寄存器
,并且它是否必须独占ax
寄存器
。或者,如果
我
想
使用
bx
寄存器
中
的
变量
,
我
是否可以执行类似mov bx,@dat
浏览 20
提问于2020-12-17
得票数 1
2
回答
EFLAGS是通用
寄存器
吗?
、
、
一些教程说EFLAGS
寄存器
是通用
寄存器
,而另一些教程则说它不是通用
寄存器
。 那么到底是哪一个呢?!
浏览 0
提问于2017-05-08
得票数 1
1
回答
在内存
中
存储具有特定长度的
变量
、
、
我
读到过像C#,Java等语言的
虚拟
机.
我
不明白其中一个细节,处理器是如何知道它应该写多少数据的。让我们假设以下语法:A是
虚拟
寄存器
,A只是8位长的符号。A意味着
寄存器
中
的地址将存储在内存
中
,我们的
变量
。让我们假设我们的
寄存器
是32位长。处理器如何知道我们只需要先在内存
中
存储一个字节,而另一个字节则是无关的?我们不能仅仅将32位加载到内存
中<
浏览 2
提问于2014-12-20
得票数 2
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
C服务器开发之笔记三
一张图读懂jvm之运行时数据区-堆、栈、以及程序计数器
深入理解Java虚拟机:字节码执行引擎
Java Jvm虚拟机的内存模型概述
巅峰造极的编程语言登场,编程界的元始天尊!连C语言都恭敬不已!
热门
标签
更多标签
云服务器
ICP备案
对象存储
腾讯会议
实时音视频
活动推荐
运营活动
广告
关闭
领券