腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
2
回答
如果
我
将
定义
为
字节
的
字
值
大小
移
动到
32位
寄存器
,
就好像
它是
dword
定义
的
一样
,会
发生
什么
?
、
代码如下: ;NASM a dw 0xDEAD ...; eax now equals 0xDE那么,这是如何工作
的
呢?汇编语言知道,
如果
我
移动
的
字节
比
定义
的
多,那么它只会在更高
的
位上加零?或者这段代码只为
我
工作,通常
它是
未
定义
的
行为或诸如此类
的<
浏览 34
提问于2019-03-15
得票数 1
回答已采纳
1
回答
MOV EAX,
DWORD
PTR DS:[ESI]是
什么
意思,它有
什么
作用?
、
好
的
,
我
在
我
的
装配中有这条线其中ESI是00402050 (ascii,"123456789012")
我
在哪里可以得到关于这类事情
的
一些好
的
参考?
浏览 1
提问于2010-07-12
得票数 51
回答已采纳
1
回答
源和目标的
大小
必须相等(8086)
、
、
我
假设MOV指令中
的
源和目标必须具有相同
的
大小
,并且当我写这些指令时: .data.codemov var,al
我
得到了操作数与16位地址和8位
寄存器
不匹配
的
错误,但在这种情况下,
我
没有得到任何错误,但仍然,var是32位(双字),ax是16位,所以为
什么
我
没有得到任何错误?.data.codemov var,ax
我<
浏览 18
提问于2018-12-30
得票数 1
回答已采纳
1
回答
程序集- Mov指令和操作数
大小
、
当我们在程序集中使用mov指令时,源操作数和目标操作数必须是相同
大小
的
。
如果
我
写:1操作数是否根据rax
寄存器
的
大小
进行转换?例如,
如果
rax是16位,我们得到: 0000000000000001
浏览 2
提问于2018-10-31
得票数 2
回答已采纳
2
回答
如何使用NASM在数组中找到最大数字
、
、
、
、
我
在NASM(x86程序集)中做了一个程序,其中要求用户输入三个32位十六进制数字(8位数字),这些数字被进一步存储在一个数组中,程序显示了其中最大
的
一个数字。程序运行良好,即显示这三个数字中最大
的
一个。但问题是,它只显示16位(4位数字)作为输出。例如,
如果
我
给出三个数字
为
111111h、222222h和100000h,则输出结果仅为2222。display show,showlen mov eax,1
浏览 1
提问于2013-09-08
得票数 0
回答已采纳
1
回答
在IA32 Linux程序集中将一个变量增量
为
一个变量
、
、
、
我
试图在Linux中将1增加到IA32程序集中
的
一个变量num: dd 0x1 global _start mov ecx, [num] mov eax,4mov eax, nummov num, eax 是否可以在不移到
寄存器</
浏览 1
提问于2021-02-23
得票数 0
回答已采纳
2
回答
位、
字节
、
字
和双字-何时在汇编中使用
什么
?
、
、
、
我
正在努力学习汇编(更像是在苦苦挣扎),
我
遇到了
字节
、单词、双字等数据类型。 真正让
我
困惑
的
是,你
什么
时候知道使用其中一个而不是另一个。显然,您希望使用最保守
的
选项,但我如何知道选择一个
字节
而不是一个单词?例如1个
字
= 16位或2
字节
。这是否意味着
我
可以在1个单词中容纳16个字符?因此,为了保存字母表,
我
需要声明2个单词?
寄存器
(16位、32位和64位)也是如此。
浏览 2
提问于2012-02-28
得票数 5
回答已采纳
2
回答
8086汇编,关于PTR运算符
、
、
这可能是简单和愚蠢
的
,但我仍然
会
问它,因为
我
似乎不能弄明白它。一个简单
的
代码片段: data segment data ends start:operation will be ax:= 256 (100h)
我
猜它与地址有关,它被一个
字节
浏览 1
提问于2013-02-08
得票数 2
回答已采纳
4
回答
为
什么
“标准”本身没有
将
“规模”(Bool)
定义
为
“一”?
、
、
、
char、signed char和unsigned char
的
大小
由C++标准本身
定义
为
1
字节
。
我
想知道为
什么
它也没有
定义
sizeof(bool)?C++03标准$5.3.3/1 sizeof of ( char)、sizeof of(Signed char)和sizeof of(无符号char)是1;适用于
的
任何其他基本类型(3.9.1)
的
结果都是实现
定义
的
[注:特别
浏览 0
提问于2011-02-21
得票数 38
回答已采纳
2
回答
短文本数据库键与数字键;
什么
时候比另一个更有效?
、
、
、
我
非常清楚,
如果
我
使用nvarchar字段作为主键或外键,那么在大多数情况下(
如果
不是全部),这将增加一些时间和空间开销。在上述情况下,我们可以假设使用char(2)字段可能比使用int键更有效,因为char数据是2
字节
,而与int一起使用
的
是4
字节
。使用基于文本
的
键而不是数字键
的
好处是,这些
值
是可读
的
,这将使许多人清楚地看到,
我
列出
的
50项记录很可能是一份美国国
浏览 2
提问于2016-03-22
得票数 2
3
回答
为
什么
movsw指令增加si和di
寄存器
by2而movsb指令增加si和di
寄存器
1?
、
我
用汇编语言使用平面汇编语言处理movsb和movsw指令。现在,
我
注意到当执行movsb指令时,SI和DI
寄存器
增加1,而movsw指令增加SI和DI
寄存器
2。
我
有点困惑为
什么
?
我
正在添加我
的
代码,
为
这两个指示与评论。请帮帮我。谢谢!
浏览 10
提问于2015-07-23
得票数 0
回答已采纳
1
回答
了解限定作用域
的
数组是如何存储
的
、
、
、
我
搞不懂数组是如何存储在可执行文件中
的
,当它们在函数之类
的
地方时。 int arr[] = {rand(), rand(), rand()};
我
在考虑函数中
的
数组,每次调用都会使用与其他调用相同
的
空间来存储它们
的
数
浏览 2
提问于2020-02-16
得票数 2
1
回答
x64 asm:
将
负值从
寄存器
移
动到
内存
、
、
、
假设
我
在.data中
定义
了一个名为val
的
字节
。还假设
我
在
寄存器
r10中有一个数字,假设
它是
12。
我
正在尝试在r10中获取该数字
的
2秒恭维,并将其存储在val中以备将来使用。所以我这样做: neg r10 mov [val], r10b 但是当我稍后尝试在val中使用该
值
(或者使用调试器进行检查)时,它将被存储并被视为无符号
值
,因此
如果
r10
为
-12,则val现
浏览 15
提问于2020-10-22
得票数 2
回答已采纳
6
回答
在C中,数组(即字符串)中
的
字符是存储在单个
寄存器
中,还是每个
寄存器
中有四个字符?
、
、
、
、
我
正在用C (32位)编写一个程序,输出一个字符串(15到40个字符长)。
我
选择使用指针和calloc来代替正式
的
数组声明。
我
的
程序功能非常好,所以这不是一个关于逻辑或函数
的
问题,
我
只是好奇
我
的
C代码
的
“引擎盖下面”
发生
了
什么
。 My
的
理解:当我使用calloc时,
我
是以
字节
为
单位分配一段内存。变量存储在32位
浏览 4
提问于2017-02-22
得票数 2
2
回答
汇编语言:
字节
操作和
字
操作
的
主要区别是
什么
?
、
在使用进行逆向工程
的
过程中,
我
遇到了像mov.b cmp.b这样
的
指令。
我
在网上查了一下,发现它们被称为“
字节
操作”。关于mov和mov.b之间
的
差异,堆栈溢出上有,但不幸
的
是,
我
不能真正理解答案。所以,
我
的
问题是“
字节
操作和
字
操作之间
的
主要区别是
什么
?”,特别是mov.b和mov,或者cmp和cmp.b之间
的
区别。非常感谢。
浏览 0
提问于2018-09-17
得票数 1
1
回答
使用SetFilePointer更改在扇区中写入
的
位置不起作用?
、
、
、
、
我
使用SetFilePointer重写MBR
的
下半部分,
它是
一个用户模式
的
应用程序,
我
打开了PhysicalDrive
的
句柄。然后
我
尝试
将
filePointer设置
为
256个,并写入512个
字节
,它们都不返回错误,但是由于某种未知
的
原因,它从扇区开始写入!
就好像
SetFilePointer甚至没有工作
一样
,SetFilePointer
的
返回<em
浏览 1
提问于2020-06-25
得票数 0
回答已采纳
1
回答
四次算子和长算子
的
区别是
什么
?
、
、
、
简单地说,
我
有以下代码:#define MAXNO 100int main() // main.c.ident "GCC: (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4"
我
不明白
的
是: 四次运算和长运算(如movq和movl )
的</em
浏览 5
提问于2015-07-26
得票数 4
回答已采纳
3
回答
简单
的
函数
大小
;理解指针指针
的
差异
、
、
、
我
正在测试一些计算函数
大小
的
方法(
我
熟悉x86上
的
操作码)。这是可行
的
,但我注意到在使用其他类型
的
指针(如
DWORD
* )时,
值
不同。LPCSTR,LPCSTR,UINT))addr; }{ cout<<(
DWORD
*)dump-(<em
浏览 0
提问于2018-01-17
得票数 3
回答已采纳
2
回答
无法从C中
的
共享库返回正确
的
内存地址
、
、
、
、
我
一直在尝试实现一个小
的
模拟,以理解malloc()
的
内存分配。
我
创建了一个名为mem.c
的
共享库。
我
将
库链接到主库,但无法传递模拟“堆”
的
正确地址。堆是由共享库中
的
malloc()调用创建
的
。共享库中
的
地址: 0x55ddaff662a0主地址:0xffffffaff662a0但是,当我#
浏览 5
提问于2021-05-11
得票数 0
回答已采纳
1
回答
x86程序集新手:基本添加和存储数字问题
、
、
你好,
我
是新来
的
装配,
我
正在努力得到一个两部分
的
程序来工作。对于此x86程序集,
我
使用Visual。第二部分,
我
要用2^0到2^6
的
幂数,x,0,1,2,4,8,32,64。
我
想,
我
正在这么做,但我并不是在储存每一种价值。
我
想将这些存储在连续<e
浏览 1
提问于2012-03-26
得票数 0
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
编译器不能说的秘密|位域和volatile
Linux内核中常用的C语言技巧
Linux 内核中常用的 C 语言技巧
调试器到底怎样工作
汇编语言入门教程
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券