📄 form1.vb
字号:
Public Class Form1
Dim x As Integer
Dim i As Integer
Dim y As Integer
Dim j As Integer
Dim ss(x) As Integer
Dim aa(y) As Integer
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
clear()
If (Me.wlktxt.Text = "" And Me.ymzstxt.Text = "") Then
MessageBox.Show("物理块数,页面总数不能为空!")
Exit Sub
End If
If (Me.wlktxt.Text >= Me.ymzstxt.Text) Then
MessageBox.Show("页面总数小于物理块数,不需要置换!")
Exit Sub
End If
Command1_Click()
FiFo()
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
clear()
If (Me.wlktxt.Text = "" And Me.ymzstxt.Text = "") Then
MessageBox.Show("物理块数,页面总数不能为空!")
Exit Sub
End If
If (Me.wlktxt.Text >= Me.ymzstxt.Text) Then
MessageBox.Show("页面总数小于物理块数,不需要置换!")
Exit Sub
End If
Command1_Click()
LRU()
End Sub
Private Sub Command1_Click()
Dim rand = New System.Random()
x = Int(Val(Me.ymzstxt.Text))
ReDim ss(x)
For i = 0 To x - 1
ss(i) = rand.Next(1, 9)
Next
For i = 0 To x - 1
Me.TextBox3.Text += ss(i).ToString + " "
Next
End Sub
Public Sub FiFo()
Dim k As Integer
k = 0
x = Int(Val(Me.ymzstxt.Text))
y = Int(Val(Me.wlktxt.Text))
ReDim aa(y)
For i = 0 To y - 1
aa(i) = 0
Next
For j = 0 To x - 1
For i = 0 To y - 1
If (ss(j) <> aa(i)) Then
If (aa(i) = 0) Then
aa(i) = ss(j)
k = (i + 1) Mod y
i = y
Else
If (i = y - 1) Then
aa(k) = ss(j)
k = (k + 1) Mod y
End If
End If
Else
aa(i) = ss(j)
k = (i + 1) Mod y
i = y
End If
Next
Dim a As Integer
For a = 0 To y - 1
Me.RichTextBox1.Text += aa(a).ToString + " "
Next
Me.RichTextBox1.Text += vbNewLine
Next
End Sub
Public Sub LRU()
Dim k As Integer
x = Int(Val(Me.ymzstxt.Text))
y = Int(Val(Me.wlktxt.Text))
ReDim aa(y)
For i = 0 To y - 1
aa(i) = 0
Next
For j = 0 To x - 1
For i = 0 To y - 1
If (ss(j) <> aa(i)) Then
If (aa(i) = 0) Then
aa(i) = ss(j)
End If
End If
Next
Next
End Sub
Public Sub clear()
Me.TextBox3.Text = ""
Me.RichTextBox1.Text = ""
End Sub
End Class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -