machine-code

    0热度

    1回答

    我是一名计算机科学的学生,我有一门煤(计算机组织和汇编语言)课程,我试图将汇编语言转换为机器语言,但我遇到了一些困难。 例如,如果我必须将MOV [SI + 490],SP转换为机器语言,那么我该怎么做呢? 我知道一些像d,w,mod,reg,r/m这样的术语。 一些有用的链接将有所帮助。谢谢!

    1热度

    1回答

    因此,经过数小时的研究,我得出结论,我不太了解。 二进制代码和机器代码/操作码: 机器码是什么,是由CPU的理解,机器代码本身是由纯二进制正确的? 举例来说000010 00000 00000 00000 10000 000000。这是机器代码跳转到1024.该机器代码由二进制组成。那是对的吗? 000010是一个OPCode,一个机器码指令,由二进制制成,正确吗? 汇编语言 汇编语言提供了正确的

    0热度

    3回答

    我有以下的Sql查询,其中我使用圆功能,但它不删除点后的小数点。 这里查询 SELECT animal_code, ROUND(SUM(calve_milk + evening + morning)/31, 0) AS Expr1 FROM Status WHERE (animal_code = 147) AND (m_date BETWEEN '1/1/2012' AND '1/31

    1热度

    1回答

    我正在参加有关计算机组织和体系结构的课程。 我们已经做了一些练习。其中之一是将汇编代码转换为机器指令。 我被困在将movia转换成机器指令。 我知道它由2个操作组成,orhi和addi。 这是汇编代码: movia r8, 50000 行使指出r0是0x0和r8是0x8。 因此,orhi是:orhi r8, r0, %hiadj(50000)和附加是:addi r8, r8,%lo(50000

    0热度

    1回答

    我想使用0和1位值创建一个二进制文件,然后我想逐一读取它们。 我该怎么做? 对于写作我想:该文件存在 var out = require("fs").createWriteStream("./out"); out.write(new Buffer("0")); // this writes "0" as string out.write(new Buffer(["0"])); // this

    0热度

    1回答

    我无法确定哪些指令将被链接器修改,哪些不会。我的教科书说,那些将被修改的是那些其值被定义为程序起始地址+ - 常数的那些。它提供了以下2点MIPS的例子: Ĵ有#在源程序一些标签 SW $ 5导致#WHERE结果是计划内的标签 则说,这些不需要修改是那些表达式是独立的程序的起始地址的 李$ L2,buffend缓冲#bufend和缓冲的标签 BNE $ 2,$ 0时,出口 我,因为我认为BNE是P

    5热度

    1回答

    我在想,是否有可能看到HotSpot编译器在编译给定的Java字节码类或方法时生成的实际机器代码?

    0热度

    1回答

    数量: Foo(int a, int b, int c) 在组装的来电写入3个值到寄存器RDI,RSI和RDX。 但函数Foo如何知道rdx是他的参数的最后一个寄存器?

    5热度

    4回答

    我是编程新手,我从C++语言开始,据我所知C++语言被C++编译器(例如:Visual Studio)转换为汇编语言,但我试图查找将汇编语言转换成机器代码以便被计算机理解和执行,但我找不到答案。 所以问题是,在哪里以及如何将汇编语言转换为机器码?是通过集成在操作系统中的某种编译器? 在此先感谢。

    2热度

    3回答

    我目前正在调查不同编程语言的运行时在幕后看起来如何。对于像C这样的编译语言,人们通常会给出“将代码编译为汇编程序并将其链接到二进制可执行文件中的解释”,然后将可执行文件加载到内存中,并由CPU解释它。我的问题是CPU如何知道在哪里寻找下一条执行指令?它是存储在其中一个寄存器中的内存地址吗?