Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Assembly 如何将字符串中的数字转换为程序集中的任何基?_Assembly_X86_Masm_Base Conversion - Fatal编程技术网

Assembly 如何将字符串中的数字转换为程序集中的任何基?

Assembly 如何将字符串中的数字转换为程序集中的任何基?,assembly,x86,masm,base-conversion,Assembly,X86,Masm,Base Conversion,如何将字符串中包含的数字从任何基转换为任何其他基 基数可以是任何东西,例如:2、16、10、4、8、9 我希望用户输入基数。用户将输入输出基数(要转换为的基数)。用户将输入他想要转换的号码 预感: 我将在变量中保存输入基和输出基。然后我将把他输入的数字保存在一个字符串中(因为他可以输入任何类型的数字(十六进制、二进制、base-5…) 我只是想弄清楚如何将字符串转换成数字,以便将其转换为输出基 有什么想法吗?将数字n改为基数b的一般算法如下: i = 0 while(n != 0) ans

如何将字符串中包含的数字从任何基转换为任何其他基

基数可以是任何东西,例如:2、16、10、4、8、9

我希望用户输入基数。用户将输入输出基数(要转换为的基数)。用户将输入他想要转换的号码

预感: 我将在变量中保存输入基和输出基。然后我将把他输入的数字保存在一个字符串中(因为他可以输入任何类型的数字(十六进制、二进制、base-5…)

我只是想弄清楚如何将字符串转换成数字,以便将其转换为输出基


有什么想法吗?

将数字n改为基数b的一般算法如下:

i = 0
while(n != 0)
   answer[i] = n mod b
   n /= b
   i++

(请注意,答案[0]包含答案的最低有效位。)这有意义吗?您在实现此伪代码的哪一部分时遇到困难?

将数字n更改为基数b的通用算法如下所示:

i = 0
while(n != 0)
   answer[i] = n mod b
   n /= b
   i++

(请注意,答案[0]包含答案的最低有效位。)这有意义吗?您在实现此伪代码的哪一部分时遇到困难?

要将字符串转换为整数,您需要查看一个

遍历字符串中的每个字符,直到到达末尾,根据字符的内容及其所在的范围:“0”到“9”、“a”到“f”、“a”到“f”,您需要减去其范围内底部字符的值并添加任何适当的量。然后将其添加到累加器值中,您应该设置为go。i guess您还需要检查是否有任何值提示该值的基数(例如,我希望十六进制值的前缀为“0x”)


例如,如果你看到一个“1”,你需要从“0”中减去。如果你看到一个“a”,你需要从“a”中减去并加上0x0a。

要从字符串转换为整数,你需要看一看

遍历字符串中的每个字符,直到到达末尾,根据字符的内容及其所在的范围:“0”到“9”、“a”到“f”、“a”到“f”,您需要减去其范围内底部字符的值并添加任何适当的量。然后将其添加到累加器值中,您应该设置为go。i guess您还需要检查是否有任何值提示该值的基数(例如,我希望十六进制值的前缀为“0x”)


例如,如果你看到一个“1”,你需要从“0”中减去。如果你看到一个“a”,你需要从“a”中减去,再加上0x0a。

我认为你需要更具体一些,你不太可能从这个网站上得到家庭作业的完整答案。“汇编”不是一种定义良好的语言。哪种芯片组?x86?请想一想如何手动完成。发布它,我们将帮助您在ASM中表示它。@SoapBox抱歉,但我不希望得到完整的答案。我只需要一些想法。@user168715对不起,我的标签中有x86,但我最多只能提交6个标签。现在我想您需要更多具体来说,你不太可能从这个网站上得到家庭作业的完整答案。“组装”不是一种定义良好的语言。哪种芯片组?x86?想一想如何手动完成。发布它,我们将帮助您在ASM中表示出来。@SoapBox抱歉,但我不希望得到完整的答案。我只需要一些想法。@user168715对不起,我的标签中有x86,但我最多只能提交6个标签。现在它就在那里。您的意思是回答[]字符串是否保存为保存输出数字字符的字节?伪代码将每个数字保存为整数,但转换为字符(只需添加0x30)很简单。您的意思是回答[]字符串是否保存为字节,保存输出数字的字符?伪代码将每个数字保存为整数,但转换为字符(只需添加0x30)很简单。谢谢。我想我会这样做。谢谢。我想我会这样做。