There is no such program. Low level languages cannot be converted to high level languages. It's one-way only.
compiling program, compiler - (computer science) a program that decodes instructions written in a higher order language and produces an assembly language program
Machine level instructions can be converted to readable assembly language using a disassembler. If the machine instructions originated from a higher level language, there may also be a decompiler to create something resembling the original high level language version of the program.
You cannot. Conversion is one-way only. It is possible to convert machine code to disassembly, but disassembly is not high-level, it is simply a symbolic representation of the machine code, similar to assembly but without any constants, named variables or comments.
Assembly language is low-level because it has the least amount of abstraction between the source and the resultant machine code. That is, the translation from assembly language to machine code is 1:1. All high-level languages have much higher degrees of abstraction.
Assembly language is the lowest level of computer code, not including the actual machine language, which is directly processed by the hardware. It contains instructions specific to the hardware of your system. When you write a program in a higher level language like C, it is first translated into assembly language before the computer can execute it. Because it is so low-level, assembly language is extremely difficult to code in.
Unix was rewritten in the C Programming language and not in assembly language. The migration from assembly language to the higher-level language C resulted in much more portable software, requiring only a relatively small amount of machine-dependent code to be replaced when porting Unix to other computing platforms. (mihir)
When you program a computer to do something then you use what is known as a higher level language. For the computer to run the program it must first convert your program into binary so the computer can do the work. That work is done by either sending an electrical signal or not sending an electrical signal through the computer. When the computer has finished running the program it then has to change the binary system it uses into the higher level language you use so you get the answer you want
We use C when we want to write low-level code with a higher level of abstraction than that provided by assembly language.
Assembler- A computer program that takes computer instructions and converts them into a pattern of bits that the computer can understand and perform by it certain operations. Compiler- program that processes statements written in a programming language and turns them into machine language that a computer's processor uses. this program get the syntax error in the written program Conceptually speaking, both an assembler and a compiler do exactly the same thing: they take as input some language that is human-understandable, and translate that directly into machine code instructions that the computer can execute. However, in common usage, an "assembler" refers specifically to a such a program that takes as its input assembly language. Assembly language is a very "low-level" programming language, where short acronyms as used to represent machine instructions. Thus, assembly language very, very closely mirrors the actual machine code being executed, and (realistically) is only very mildly "human readable". Assemblers do little more than directly translate the assembly source code into machine code - that is, they don't do optimization of their own, as assembly language is meant as a direct representation of the machine code, and thus no optimization is required (or, desired). A "compiler" generally refers to any other instance of this concept, but usually means something that take a "higher-level language" (i.e. anything above assembly language) and translates that to machine code. Compilers generally need to be significantly "smarter" than an assembler, as the compiler does a whole lot more work, and thus, has the opportunity to make significantly optimizations when doing the source->machine code translation. That is, high-level languages allow for the expression of concepts of ideas, which make them ideal for humans to write programs in. The compiler must be sophisticated enough to take these ideas and convert them into concrete machine code instructions. In addition, better compilers notice places where shortcuts can be taken (optimizations) given the overall structure of the input source code.
ASCII (apex)
There is very little difference, functionally, between assembly language and machine level language. Each assembly language statement corresponds to one machine instruction. The difference is in readability (who wants to read and write in hex code?) and in ease of address computation.
Assembly uses commands you can begin to understand, like JSR (Jump to subroutine which changes points in a code) machine code on the other hand is the code that the machine reads. This would only look like numbers to you, probably in hex code. Basically the higher level a language is the easier to understand because of the level of abstraction. It goes, machine code, assembly language, then things like C then java or visual basic. In VB you can write commands almost the same as you would construct an English sentence, the compiler then converts this down to machine code which the processor can understand and execute. Got it?