
ARM processor disassembler and emulator
- or -
Post a project like this2928
$$$
- Posted:
- Proposals: 2
- Remote
- #1520494
- Awarded
Description
Experience Level: Expert
General information for the business: N/A
Description of requirements/functionality: The task is written in C language and it's composed of two parts:
the first one should result in the development of a computer program which has the ability to fetch, decode and display the instructions within the provided instruction set. (Instruction Decoding and Disassembling )
The program should output something similar to the following.
Op-Code Assembly Mnemonic
----------------------------------
E3 A0 00 01 MOV r0,#1
E3 A0 10 02 MOV r1,#2
E0 80 20 01 ADD r2,r0,r1
E2 82 20 05 ADD r2,r2,#5
The second is Besic Emulation: as displaying each Assembly language instruction it should also emulate the behaviour of these. i.e. implement a basic CPU emulator. For this requirement only the basic ALU type instructions need to be supported, e.g. ADD, SUB, CMP, MOV.
Op-Code Assembly Mnemonic
----------------------------------
E3 A0 00 01 MOV r0,#1
R0: 00000001 R1: 00000000 r2: 00000000 r3: 00000000
R4: 00000000 R5: 00000000 r6: 00000000 r7: 00000000
R8: 00000000 R9: 00000000 r10:00000000 r11:00000000
R12:00000000 R13:00010000 r14:00000000 r15:00000104
Press for next instruction.
Extra notes: I have already started a good part of the first task.
Description of requirements/functionality: The task is written in C language and it's composed of two parts:
the first one should result in the development of a computer program which has the ability to fetch, decode and display the instructions within the provided instruction set. (Instruction Decoding and Disassembling )
The program should output something similar to the following.
Op-Code Assembly Mnemonic
----------------------------------
E3 A0 00 01 MOV r0,#1
E3 A0 10 02 MOV r1,#2
E0 80 20 01 ADD r2,r0,r1
E2 82 20 05 ADD r2,r2,#5
The second is Besic Emulation: as displaying each Assembly language instruction it should also emulate the behaviour of these. i.e. implement a basic CPU emulator. For this requirement only the basic ALU type instructions need to be supported, e.g. ADD, SUB, CMP, MOV.
Op-Code Assembly Mnemonic
----------------------------------
E3 A0 00 01 MOV r0,#1
R0: 00000001 R1: 00000000 r2: 00000000 r3: 00000000
R4: 00000000 R5: 00000000 r6: 00000000 r7: 00000000
R8: 00000000 R9: 00000000 r10:00000000 r11:00000000
R12:00000000 R13:00010000 r14:00000000 r15:00000104
Press for next instruction.
Extra notes: I have already started a good part of the first task.

Andy T.
100% (3)Projects Completed
3
Freelancers worked with
3
Projects awarded
100%
Last project
6 Apr 2017
United Kingdom
New Proposal
Login to your account and send a proposal now to get this project.
Log inClarification Board Ask a Question
-
There are no clarification messages.
We collect cookies to enable the proper functioning and security of our website, and to enhance your experience. By clicking on 'Accept All Cookies', you consent to the use of these cookies. You can change your 'Cookies Settings' at any time. For more information, please read ourCookie Policy
Cookie Settings
Accept All Cookies