📄 getrandom.java
字号:
package myprojects.os;
import java.util.Random;
import java.io.*;
//GetRandom类,用于产生400个0~399间的随机数指令地址及其相对应的页地址
class GetRandom{
String str="";
public GetRandom(){} //缺省构造函数
public int[] getRandom(){ //产生400个0~399间的随机数指令地址的方法,并返回
int[] dictate = new int[400]; //存放这些指令的数组首地址
Random b= new Random(); //创建一个Random类的对象
int i;
int j;
for(i=0;i<400;i=i+5){
dictate[i]=b.nextInt(400); //获取随机数(循环一次获取5个指令数)
dictate[i+1]=dictate[i]+1;
dictate[i+2]=b.nextInt(dictate[i+1]);
dictate[i+3]=dictate[i+2]+1;
dictate[i+4]=dictate[i+3]+1+b.nextInt(398-dictate[i+3]);
}
return dictate; //返回数组首地址
}
public int[] getPage(){ //将指令数组转换为其相应的页地址方法
int[] page = new int[400];
int[] dic = new int[400];
dic=getRandom(); //取得指令数组首地址
int i;
for(i=0;i<400;i++)
page[i]=dic[i]/10; //变换
return page; //返回存放页地址的数组的首地址
}
public String outRandom()throws IOException{ // 将指令及相应页面转换为一字符串函数
int[] d = new int[400];
int[] p = new int[400];
d=getRandom(); //取得指令数组首地址
p=getPage(); //获取存放页地址的数组的首地址
int i;
for(i=0;i<400;i++){ // 将指令及相应页面以字符串存放
str=str+"["+String.valueOf(d[i])+" "+String.valueOf(p[i])+"]"+" ";
if(i%10==9)
str=str+"\n";
}
return str;//返回该字符串
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -