腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
3
回答
将NASM程序集中
的
数字
平方,而不进行乘法运算
、
、
有没有可能在不做任何乘法(通过使用移位等)
的
情况下对存储在
寄存器
(比如
eax
)中
的
数字
进行平方运算?我将在32位
汇编
中
计算
一个16
位数
的
平方,所以溢出应该不是问题。我正在使用NASM
x86
程序集来创建程序。提前感谢您
的
帮助。
浏览 1
提问于2010-04-11
得票数 3
回答已采纳
1
回答
如何
计算
放入
寄存器
eax
的
数字
的
位数
(
汇编
x86
)
、
假设我们在
eax
中有970个
数字
,我试着这样
计算
位数
mov ebx, 10labelDivider: cdqcmp
eax
, 0 jnzlabelDivider 结果值应该放在ecx中,结果我总是有1-而不是3或另一个(如果我改变初始
数字
)。
浏览 12
提问于2021-04-22
得票数 0
2
回答
MDR,MAR登记册,与
汇编
语言有关
、
、
在过去
的
几个星期里,我一直在阅读装配编程和
计算
机架构,但是我只剩下几个问题,我似乎找不到答案。 阅读有关CPU构建等内容时,您将了解MAR和MDR
寄存器
,以及它们
如何
控制内存和CPU之间
的
数据流。另外,在
汇编
语言中(这里参考IA-32 ),我们了解到
x86
体系结构有8个通用
寄存器
(
EAX
、ESP、EDI等)、6个段
寄存器
和2个控制
寄存器
(1个标志
寄存器
和一个指令指针)。总共有16个
浏览 1
提问于2013-12-12
得票数 2
回答已采纳
2
回答
ascii
的
装配号
、
我正在使用英特尔上使用at&t语法
的
汇编
程序。假设我想转换
数字
10,并将
数字
10
放入
寄存器
%
eax
。如果我将
数字
48加到%
eax
上,ascii符号将是:mov $10, %
eax
#Cut
浏览 0
提问于2012-02-02
得票数 3
回答已采纳
1
回答
x86
程序集:调用malloc不会将指向已分配内存
的
指针放置在
EAX
寄存器
中
、
、
、
、
我试图通过在
x86
汇编
中调用外部C命令malloc (AT&T/Intel语法),在内存中分配40字节
的
空间。然而,当我调试我
的
程序时,调用malloc命令后,
EAX
寄存器
并没有改变(据我所知,使用malloc
的
过程是将您想要分配
的
字节数
放入
EDI
寄存器
,然后执行call malloc,将指针
放入
EAX
寄存器
中分配
的
内存块下面是
浏览 16
提问于2020-11-23
得票数 0
回答已采纳
1
回答
将数据
放入
SIMD
寄存器
需要多少周期?
、
、
我是一个学习
x86
和ARM架构
的
学生。我知道
x86
SSE
的
xmms
寄存器
有128位大小
的
寄存器
。如果我想通过SIMD指令集和
汇编
语言将32位8
位数
据从堆栈中
放入
xmms
寄存器
中,还是每8<e
浏览 1
提问于2013-12-18
得票数 4
回答已采纳
8
回答
用于比较两个
数字
的
程序集
、
、
、
确定两个
数字
中哪一个较大
的
汇编
程序语法是什么? 它
的
较低级别(机器代码)是什么?我们能再低一点吗?一旦我们达到位级别,会发生什么?它是
如何
用0和1来表示
的
?
浏览 1
提问于2009-07-14
得票数 21
回答已采纳
3
回答
汇编
程序64b除法
、
、
、
、
我需要一些简单
的
方法来除以
x86
汇编
中
的
64b无符号整数。我
的
数字
保存在两个32b
寄存器
EDX:
EAX
中,我需要将结果放回EDX:
EAX
。因数为32b整数。一些代码,好吗?
浏览 0
提问于2012-10-19
得票数 4
回答已采纳
1
回答
x86
汇编
乘除指令操作数,16位或更高
、
、
、
我对
x86
汇编
语言中
的
乘除运算是
如何
工作
的
感到相当困惑。例如,下面的代码看起来并不太难,因为它涉及到8位。
如何
将两个16
位数字
相乘,方法与对8
位数字
进行乘法相同?; User Input:; [num2], 15 mov
eax</em
浏览 3
提问于2012-03-21
得票数 10
回答已采纳
1
回答
使用
x86
程序集将位字段打包到32位
寄存器
中
、
、
目前,我正在
汇编
程序
x86
AT&T中使用RNS。我得把5个残余物放在一个
寄存器
里,%
eax
。division number mov $0, %edx .global _start division number m
浏览 4
提问于2015-03-27
得票数 1
回答已采纳
1
回答
x86
组件GAS中
的
划分
、
、
我还不太确定除法在
x86
汇编
中是
如何
工作
的
(GAS AT&T语法)。我想做
的
是将两个长整形相除,然后将商与除数相乘,看看新
的
数字
是否等于初始
数字
(n/m *m= n)。movl %ebx, %
eax
idivl %edxje .equal 上面的代码是我做除法运算
的
一段代码ebx和ecx是我想要除以<
浏览 4
提问于2016-09-23
得票数 5
回答已采纳
4
回答
获取
EAX
寄存器
的
上半部分
、
在
x86
汇编
语言中,有没有办法获得
EAX
寄存器
的
上半部分?我知道AX
寄存器
已经包含了
EAX
寄存器
的
下半部分,但我还不知道有什么方法可以获得上半部分。我知道mov bx, ax会将
eax
的
下半部分移到bx中,但我也想知道
如何
将
eax
的
上半部分移到bx中。
浏览 1
提问于2013-03-06
得票数 6
回答已采纳
1
回答
如果将函数调用结果作为参数传递,函数调用
的
结果保存在哪里?
、
、
、
、
argc, char **argv) { e = mul_c_d(116, sum_a_b(17, 992));}处理器
寄存器
?堆?int main(uint16_t argc, char **argv) {
浏览 4
提问于2021-06-01
得票数 1
回答已采纳
1
回答
x86
汇编
指令mov [esp+0ACh+var_A4],
eax
、
我偶然发现了以下
x86
汇编
说明。不能理解它。正如我所猜测
的
那样,它将
eax
寄存器
中
的
值保存到由esp+0ACh+var_A4表示
的
地址中。不确定。我能够理解下面的
汇编
说明。这很明显,将ebp+0加载到
eax
寄存器
。如果我错了,请改正。
浏览 21
提问于2018-01-30
得票数 1
回答已采纳
5
回答
在
x86
汇编
语言中获取
EAX
寄存器
的
第一位
、
在
x86
汇编
语言中,有可能获得
寄存器
的
第一位吗?我想获取
eax
寄存器
的
第一位并将其移到ebx中,但我还不确定
如何
做到这一点。.stack 2048 start:;now I want to movethe first bit of
eax
into ebx.How can I obtain t
浏览 2
提问于2013-03-06
得票数 1
回答已采纳
1
回答
将ebx
寄存器
放入
DD变量时包含
的
隐藏值
、
、
在使用Turbo Debugger执行代码时,我
的
bx
寄存器
中有一个0001值。之后,当我向DD变量sum1发送ebx时,发送
的
值变成了30310001h。 它
的
原因是什么,我
如何
避免它?我唯一
的
猜测是:sum1收到了一个不可见
的<
浏览 0
提问于2015-05-15
得票数 0
2
回答
在linux平台下调试程序集代码
、
、
、
、
我刚开始调试gdb.Therefore下
的
程序集代码,我有一些问题;
如何
在没有实际运行
的
情况下运行组装代码(在虚拟位置)?如果需要一个值,
如何
插入一个值来查看它在开关语句中
的
工作方式?扫描(%d,&y);而(Y){.扫描器( "%d",&x);开关(X){例1:.案例2:.案例3:.}如果需要,
如何
知道
寄存器
中存储了什么值?
如何
将所有显示输出到.txt文件中?换句话说,假设我已经启动了我
的
程序,并
浏览 4
提问于2011-10-20
得票数 2
回答已采纳
1
回答
如何
在x86_64程序集中打印字符串
、
、
、
我对
汇编
比较陌生,并且编写了一个简单
的
程序来将
数字
1到10打印到屏幕上。然而,在我写完它后不久,我意识到我需要将它从
x86
转换为x86_64
汇编
,才能在我
的
主工作站上运行。大多数转换都进行得相当顺利,除了一个模块,它将
数字
转换为字符串后在屏幕上打印出来。在
x86
中,要打印
的
代码是:pop
eax
mov ebx, 1 mov <
浏览 0
提问于2019-07-12
得票数 0
2
回答
汇编
语言中
的
双词加乘方法
我有一个令人难以置信
的
项目,一直在捣乱我。我需要编写一个程序,从输入中得到2个
数字
,将它们相加或相乘。这个程序应该能够得到双单词以及。我知道
如何
从输入中得到
数字
,如果它们
的
大小是最大
的
一个单词,
如何
加或乘它们,但是我不能解决这个双字
的
问题。提前谢谢.
浏览 9
提问于2016-12-15
得票数 0
回答已采纳
1
回答
ARM内联约束
、
、
、
在ARM
汇编
中有没有一种方法可以将数组
的
地址
放入
寄存器
中?类似于
X86
的
AT&T语法__asm__("LDR R0,%0" :: "m" (&array`)
浏览 0
提问于2013-07-03
得票数 2
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
热门
标签
更多标签
云服务器
ICP备案
云直播
对象存储
实时音视频
活动推荐
运营活动
广告
关闭
领券