Transform this code to Assembly, and transform from 64bit to 32bit:- #include <s
ID: 3579881 • Letter: T
Question
Transform this code to Assembly, and transform from 64bit to 32bit:-
#include <stdio.h>
#include <wiringPi.h>
#include <sys/time.h>
int main() {
wiringPiSetup();
int blue =0;
int red =1;
int button =3;
int count =0;
int release =1;
pinMode (blue,OUTPUT);
pinMode (red,OUTPUT);
pinMode (button,INPUT);
struct timeval starttime;
struct timeval currenttime;
for(;;){
if (digitalRead(button)) {
gettimeofday(&starttime,NULL);
digitalWrite(red,HIGH);
do{
if(digitalRead(button)){
digitalWrite(blue,HIGH);
if(release ==1){
count++;
release=0;
delay(75);
}
}else{
digitalWrite(blue,LOW);
release =1;
}
gettimeofday(¤ttime,NULL);
}while(currenttime.tv_sec-starttime.tv_sec<10);
printf("You pressed the button %d times ",count);
digitalWrite(red,LOW);
digitalWrite(blue,LOW);
break;
}
}
return 0;
}
Explanation / Answer
#include <stdio.h>
#include <wiringPi.h>
#include <sys/time.h>
int main() {
wiringPiSetup();
int blue =0;
int red =1;
int button =3;
int count =0;
int release =1;
pinMode (blue,OUTPUT);
pinMode (red,OUTPUT);
pinMode (button,INPUT);
struct timeval starttime;
struct timeval currenttime;
for(;;){
if (digitalRead(button)) {
gettimeofday(&starttime,NULL);
digitalWrite(red,HIGH);
do{
if(digitalRead(button)){
digitalWrite(blue,HIGH);
if(release ==1){
count++;
release=0;
delay(75);
}
}else{
digitalWrite(blue,LOW);
release =1;
}
gettimeofday(¤ttime,NULL);
}while(currenttime.tv_sec-starttime.tv_sec<10);
printf("You pressed the button %d times ",count);
digitalWrite(red,LOW);
digitalWrite(blue,LOW);
break;
}
}
return 0;
}
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.