Related questions
Concept explainers
Take the following program and translate it into PEP/9 assembly language:
#include <iostream>
using namespace std;
int fib(int n)
{
int temp;
if (n <= 0)
return 0;
else if (n <= 2)
return 1;
else {
temp = fib(n – 1);
return temp + fib(n-2);
}
}
int main()
{
int num;
cout << "Which fibonacci number? ";
cin >> num;
cout << fib(num) << endl;
return 0;
}
You must use equates to access the stack and follow the call to the function as discussed in the book (pass the parameter, return address, return a value and so on). There are NO global variables in the resulting code (except a global message of "Range num? "). It must be able to do sum a range greater than 2.
comments would be appreciated
Trending nowThis is a popular solution!
Step by stepSolved in 2 steps
- 31. Write an assembly language program that corresponds to the following C program: int num; int main () { scanf("%d", &num); num = num % 16; printf("num = %d\n", num); return 0;arrow_forwardConvert the following c++ code into pep9 assembly language. #include <iostream> using namespace std; void times(int& prod, int mpr, int mcand) { prod = 0; while (mpr != 0) { if (mpr % 2 == 1) prod = prod + mcand; mpr /= 2; mcand *= 2; } } int main(){ int product, n, m; cout << "Enter two numbers: "; cin >> n >> m; times(product, n, m); cout << "Product: " << product << endl; return 0; }arrow_forwardConvert the following c++ code into pep9 assembly language #include <iostream> using namespace std; void times(int& prod, int mpr, int mcand) { prod = 0; while (mpr != 0) { if (mpr % 2 == 1) prod = prod + mcand; mpr /= 2; mcand *= 2; } } int main(){ int product, n, m; cout << "Enter two numbers: "; cin >> n >> m; times(product, n, m); cout << "Product: " << product << endl; return 0; }arrow_forward
- convert this code to java language /* OPERATING SYSTEMS LAB PROJECT* AKASH JAIN* 179303013* DESIGNING A VIRTUAL MEMORY MANAGER*/ #include<stdio.h>#include<stdlib.h>#include<string.h> const int VM_SIZE=256;const int PAGE_SIZE=256;const int TLB_SIZE=16;const int MM_SIZE=256; int main(int argc, char* argv[]){FILE *fd;if(argc<2){printf("NOT ENOUGH AGRUMENTS\n EXITING\n");return 0;}fd=fopen(argv[1],"r");if(fd==NULL){printf("ERROR OPENING FILE\n FILE FAILED TO OPEN\n");return 0;}char *value=NULL;size_t len=0;ssize_t read;long long page_no,offset,page_table,totalhits=0,fault=0,pages=0;int qp=0; //to maintain the queue positionint physicalad=0,frame,logicalad;int tlb[TLB_SIZE][2];int pagetable[PAGE_SIZE]; memset(tlb,-1,TLB_SIZE*2*sizeof(tlb[0][0]));memset(pagetable,-1,sizeof(pagetable));int mask=255,mask1=62580,i,hit;while((read=getline(&value,&len,fd))!=-1){pages++;//get page number and offset from logical...arrow_forwardConvert the following into Pep/9 Assembler: #include <iostream>using namespace std;int square(int n){ int i; int sq; sq = 0; for (i = 0; i < n; i++){ sq = sq + n; } return sq;}int main (){ int num; cout << "Enter a number: "; cin >> num; cout << num << " squared = " << square(num) << endl; return 0;} Submit: Source file along with screen captures showing the program running in the Pep simulator.arrow_forwardConvert the following program into pep/9 assembly language #include <iostream>using namespace std;int total;int main(){ int num1;int num2;cin >> num1 >> num2; total = num1 + num2;cout << "Sum = " << total << endl; return 0;}arrow_forward
- Complete the following C++ programs into Pep/9 assembly language: 1) int main(){int cop; int driver; cop = 0; driver = 40; while (cop <= driver) { cop += 25; driver += 20; } cout << cop; return 0;}arrow_forwardExample: The Problem Input File Using C programming language write a program that simulates a variant of the Tiny Machine Architecture. In this implementation memory (RAM) is split into Instruction Memory (IM) and Data Memory (DM). Your code must implement the basic instruction set architecture (ISA) of the Tiny Machine Architecture: //IN 5 //OUT 7 //STORE O //IN 5 //OUT 7 //STORE 1 //LOAD O //SUB 1 55 67 30 55 67 1 LOAD 2- ADD 3> STORE 4> SUB 5> IN 6> OUT 7> END 8> JMP 9> SKIPZ 31 10 41 30 //STORE O 67 //OUT 7 11 /LOAD 1 //OUT 7 //END 67 70 Output Specifications Each piece of the architecture must be accurately represented in your code (Instruction Register, Program Counter, Memory Address Registers, Instruction Memory, Data Memory, Memory Data Registers, and Accumulator). Data Memory will be represented by an integer array. Your Program Counter will begin pointing to the first instruction of the program. Your simulator should provide output according to the input file. Along with...arrow_forwardTranslate the following C++ program to Pep/9 assembly language. Code should also be commented. #include <iostream>using namespace std;int Lesser(int x, int y) { int least; if (x < y) least = x; else least = y; return least;}int main(){ int num1; int num2; cout << "Enter two integers: "; cin >> num1 >> num2 cout << "Lesser: " << Lesser(num1, num2); << endl; return 0;}arrow_forward
- translate a c++ program into pep/9 assembly language #include <iostream> using namespace std; int myAge;void ShowVal(int age){ cout << "Age:" << age << endl;} int main() {cout << "Enter age: ";cin >> myAge;ShowVal(myAge);return 0;}arrow_forwardConvert the following C++ programs into Pep/9 assembly #include <iostream> using namespace std; void times(int& prod, int mpr, int mcand) { prod = 0; while (mpr != 0) { if (mpr % 2 == 1) prod = prod + mcand; mpr /= 2; mcand *= 2; } } int main(){ int product, n, m; cout << "Enter two numbers: "; cin >> n >> m; times(product, n, m); cout << "Product: " << product << endl; return 0; } Submit: Pep/9 source code along with screen capture showing it running in the Pep simulatorarrow_forwardConvert the following C++ program to pep9/Assembly language BR Main format not machine language #include <iostream>using namespace std; int times(int mpr, int mcand){int prod = 0;while (mpr != 0){if (mpr % 2 == 1)prod = prod + mcand;mpr /= 2;mcand *= 2;} return prod;} int main(){ int n, m; cout << "Enter two numbers: ";cin >> n >> m; cout << "Product: " << times(n, m) << endl; return 0;}arrow_forward
- Text book imageDatabase System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationText book imageStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONText book imageDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- Text book imageC How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONText book imageDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningText book imageProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education