سلام.
1-
char
int sum=0;
for(x=0;x<100;x++)
for(y=0;y<=x;y+=2)
{
if(x+y<=20) sum=sum+5;
else if(x-y>50) sum-=2;
else sum++
}
char x=6;
y=7;
if(x%y==4&&x/y>10) z=-2;
else z=7;
کسی می تونه کد رو به اسمبلی برگردونه؟
Printable View
سلام.
1-
char
int sum=0;
for(x=0;x<100;x++)
for(y=0;y<=x;y+=2)
{
if(x+y<=20) sum=sum+5;
else if(x-y>50) sum-=2;
else sum++
}
char x=6;
y=7;
if(x%y==4&&x/y>10) z=-2;
else z=7;
کسی می تونه کد رو به اسمبلی برگردونه؟
خوب کاری نداره چند تا حلقه هست با چند عمل ریاضی.
برای این کار برای هر متغییر حلقه یک متعیر و برای هر کدوم از متغیر های ریاض همم یک متغیر جدا.
بهتری راه برای شما فقط کار با این متغییر هاست و از رجیستر ها کمتر استفاده کنید به نتیجه در کوتاهترین زمان میرسید.
موفق باشید.
سلام
کد HTML:1-
char
int sum=0;
for(x=0;x<100;x++)
for(y=0;y<=x;y+=2)
{
if(x+y<=20) sum=sum+5;
else if(x-y>50) sum-=2;
else sum++
}
char x=6;
y=7;
if(x%y==4&&x/y>10) z=-2;
-------------------------
sum db 0
lf1:
mov cx,0
cmp cx,100
ja exit
inc cx
lf2:
mov dx,0
cmp dx,cx
jnle exit
mov bx,cx
add bx,dx
cmp bx,20
jnle els1
add sum,5
els1:
mov bx,cx
sub bx,dx
cmp bx,50
jna exit
sub sum,2
cmp dx,cx
jle lf2
cmp cx,100
jle lf1
;part 2 !
x db 6
y db 7
z db 0
mov ax,x
div y
mov cl,ah
cmp cl,4
je f2
f2:
mov ax,x
div y
cmp al,10
jna exit
sub z,2
exit:
;some code goes here!
در کامپایلر بورلند سی:
bcc -S my_c_file.c
توجه شود که S- را با حروف بزرگ بنویسید.
یا از طریق منوی option کامپایلر را طوری پیکربندی کنید که کد اسمبلی را تولید کند
اینو فراموش کردم:لبخندساده:
در توربو سی هم به جای tcc , bcc را بنویسید.
#include <conio.h>
#include <iostream>
#include <iomanip>
#include <stdio.h>
#include <stdlib.h>
using namespace std;
const int m=20;
int k[m][m];
int Count=0;
int v=0 , n=0 , i=0 , j=0 , state=0;
void remove(int i,int j)
{
int p,q;
k[i][j]=0;
Count--;
for(p=0;p<n;p++)
if(p!=i)
k[p][j]--;
for(p=0;p<n;p++)
if(p!=j)
k[i][p]--;
p=i+1;
q=j+1;
while(p<n && q<n)
{
k[p++][q++]--;
}
p=i-1;
q=j-1;
while(p>=0 && q>=0)
{
k[p--][q--]--;
}
p=i+1;
q=j-1;
while(p<n && q>=0)
{
k[p++][q--]--;
}
p=i-1;
q=j+1;
while(p>=0 && q<n)
{
k[p--][q++]--;
}
}
int apply(int i,int j)
{
int p,q;
k[i][j]=1;
Count++;
for(p=0;p<n;p++)
if(p!=i)
k[p][j]++;
for(p=0;p<n;p++)
if(p!=j)
k[i][p]++;
p=i+1;
q=j+1;
while(p<n && q<n)
{
k[p++][q++]++;
}
p=i-1;
q=j-1;
while(p>=0 && q>=0)
{
k[p--][q--]++;
}
p=i+1;
q=j-1;
while(p<n && q>=0)
{
k[p++][q--]++;
}
p=i-1;
q=j+1;
while(p>=0 && q<n)
{
k[p--][q++]++;
}
}
void draw()
{
system("cls");
for(int p=0;p<n;p++)
{
for(int q=0;q<n;q++)
{
if(k[p][q]!=1)
cout<<setw(3)<<'.';
else
cout<<setw(3)<<'X';
}
cout<<endl<<endl;
}
cout<<endl<<endl<<"Total states founded for "<<n<<"*"<<n<<" boards and "<<v<<" Queens: "<<state<<endl;
}
void check()
{
if(Count==v)
{
state++;
draw();
cout<<endl<<endl<<"Press q to exit or any key to continue...";
int c=getch();
if(c=='q')exit(0);
}
}
void move(int p,int q)
{
apply(p,q);
check();
for(int i=p;i<n;i++)
{
for(int j=0;j<n;j++)
if(k[i][j]==0)
move(i,j);
}
remove(p,q);
}
int main()
{
cout<<"**************Queens******************"<<en dl<<endl;
cout<<"Enter size of board :";
cin>>n;
cout<<"Enter number of queens:";
cin>>v;
system("cls");
draw();
for(i=0;i<n;i++)
for(j=0;j<n;j++)
move(i,j);
system("cls");
cout<<"Total states:"<<state<<endl;
getch();
return 0;
}
سلام به دوستان محترم .
آیا کسی میتونه این کد به اسمبلی تغییر بده ؟؟
دوستان منم اینو میخوام کسی نمیدونه چطوری میشه ؟
برنامه ای به زبان اسمبلی، که توش کاربر بیاد دستور if و یا for را به زبان برنامه نویسی c بنویسه و این برنامه ما که خودشم به زبان اسمبلی نوشته شده بیاد این if یا for رو معادل اسمبلیشو تو خود اسمبلی پایینش چاپ کنه
سلام.
#include <iostream>
#include <vector>
enum State
{
RUNNING,
READY,
BLOCKED
};
const uint32_t INTERRUPT_TIMER = 1;
const uint32_t INTERRUPT_IO = 2;
const uint32_t INTERRUPT_NETWORK = 3;
struct Process
{
int id;
int state;
int priority;
};
struct VirtualMemory
{
int page_size;
int num_pages;
int *pages;
};
class Kernel
{
std::vector<Process> processes;
VirtualMemory memory;
public:
Kernel()
{
processes.reserve(10);
memory.page_size = 4096;
memory.num_pages = 1024;
memory.pages = new int[memory.num_pages];
// Initialize other components...
}
void create_process(int id, int priority)
{
processes.emplace_back(Process{id, 0, priority});
// Additional logic for process creation...
}
void schedule_process(Process *process)
{
// Implement your scheduling algorithm here.
// For example, a simple round-robin scheduler:
Process *next_process = nullptr;
for (Process &p : processes)
{
if (p.state == READY)
{
next_process = &p;
break;
}
}
if (next_process != nullptr)
{
schedule_process(next_process);
}
// Set the process state to RUNNING.
process->state = RUNNING;
}
uint32_t get_interrupt_type()
{
// Placeholder implementation.
// You should replace this with your actual logic.
return INTERRUPT_TIMER;
}
void handle_interrupt()
{
uint32_t interrupt_type = get_interrupt_type();
// Handle different interrupt types...
switch (interrupt_type)
{
case INTERRUPT_TIMER:
// Handle timer interrupt...
break;
case INTERRUPT_IO:
// Handle I/O interrupt...
break;
case INTERRUPT_NETWORK:
// Handle network interrupt...
break;
default:
// Handle other cases...
break;
}
}
int main()
{
Kernel kernel;
// Your main program logic...
return 0;
}
};
int main()
{
// Instantiate the Kernel and start your program.
Kernel myKernel;
// Your main program logic...
return 0;
}
کسی میتونه این کد را به زبان اسمبلی برگردونه؟