Advertisement
SMF

project3

SMF
Apr 29th, 2015
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. # ############################################################### #
  2. # Joshua Haupt - 344
  3. # Project 3
  4. #
  5. #
  6. # ############################################################### #  
  7.  
  8.  
  9. .data
  10.  
  11. # Segment_Table.txt
  12. #   .word <Segment Base>, <Segment Limit>
  13.  
  14. .word   0,      4193999     # for segment 0
  15. .word   4193400,    2304561     # for segment 1
  16. .word   6498562,    189652      # for segment 2
  17. .word   6688215,    3964511     # for segment 3
  18. .word   10652727,   876901      # for segment 4
  19. .word   11529629,   1009452     # for segment 5
  20. .word   12539082,   4193999     # for segment 6
  21. .word   16733082,   1823003     # for segment 7
  22.  
  23. VMT:
  24.  
  25. #     .word   <Physical Page #>, <Valid Flag>
  26.  
  27. .word  108, 0   # the physical page number and the valid flag for virtual page 0
  28. .word  97, 0   # the physical page number and the valid flag for virtual page 1
  29. .word  118, 0   # the physical page number and the valid flag for virtual page 2
  30. .word  14, 0   # the physical page number and the valid flag for virtual page 3
  31. .word  47, 0   # the physical page number and the valid flag for virtual page 4
  32. .word  64, 0   # the physical page number and the valid flag for virtual page 5
  33. .word  33, 0   # the physical page number and the valid flag for virtual page 6
  34. .word  117, 0   # the physical page number and the valid flag for virtual page 7
  35. .word  127, 0   # the physical page number and the valid flag for virtual page 8
  36. .word  126, 0   # the physical page number and the valid flag for virtual page 9
  37. .word  31, 0   # the physical page number and the valid flag for virtual page 10
  38. .word  15, 0   # the physical page number and the valid flag for virtual page 11
  39. .word  48, 0   # the physical page number and the valid flag for virtual page 12
  40. .word  44, 0   # the physical page number and the valid flag for virtual page 13
  41. .word  16, 0   # the physical page number and the valid flag for virtual page 14
  42. .word  17, 0   # the physical page number and the valid flag for virtual page 15
  43. .word  116, 0   # the physical page number and the valid flag for virtual page 16
  44. .word  72, 0   # the physical page number and the valid flag for virtual page 17
  45. .word  69, 0   # the physical page number and the valid flag for virtual page 18
  46. .word  16, 0   # the physical page number and the valid flag for virtual page 19
  47. .word  89, 0   # the physical page number and the valid flag for virtual page 20
  48. .word  52, 0   # the physical page number and the valid flag for virtual page 21
  49. .word  109, 0   # the physical page number and the valid flag for virtual page 22
  50. .word  21, 0   # the physical page number and the valid flag for virtual page 23
  51. .word  19, 0   # the physical page number and the valid flag for virtual page 24
  52. .word  103, 0   # the physical page number and the valid flag for virtual page 25
  53. .word  113, 0   # the physical page number and the valid flag for virtual page 26
  54. .word  115, 0   # the physical page number and the valid flag for virtual page 27
  55. .word  124, 0   # the physical page number and the valid flag for virtual page 28
  56. .word  99, 0   # the physical page number and the valid flag for virtual page 29
  57. .word  28, 0   # the physical page number and the valid flag for virtual page 30
  58. .word  88, 0   # the physical page number and the valid flag for virtual page 31
  59. .word  89, 0   # the physical page number and the valid flag for virtual page 32
  60. .word  102, 0   # the physical page number and the valid flag for virtual page 33
  61. .word  127, 0   # the physical page number and the valid flag for virtual page 34
  62. .word  35, 0   # the physical page number and the valid flag for virtual page 35
  63. .word  95, 0   # the physical page number and the valid flag for virtual page 36
  64. .word  101, 0   # the physical page number and the valid flag for virtual page 37
  65. .word  20, 0   # the physical page number and the valid flag for virtual page 38
  66. .word  117, 0   # the physical page number and the valid flag for virtual page 39
  67. .word  118, 0   # the physical page number and the valid flag for virtual page 40
  68. .word  54, 0   # the physical page number and the valid flag for virtual page 41
  69. .word  33, 0   # the physical page number and the valid flag for virtual page 42
  70. .word  11, 0   # the physical page number and the valid flag for virtual page 43
  71. .word  60, 0   # the physical page number and the valid flag for virtual page 44
  72. .word  13, 0   # the physical page number and the valid flag for virtual page 45
  73. .word  95, 0   # the physical page number and the valid flag for virtual page 46
  74. .word  75, 0   # the physical page number and the valid flag for virtual page 47
  75. .word  77, 0   # the physical page number and the valid flag for virtual page 48
  76. .word  41, 0   # the physical page number and the valid flag for virtual page 49
  77. .word  92, 0   # the physical page number and the valid flag for virtual page 50
  78. .word  28, 0   # the physical page number and the valid flag for virtual page 51
  79. .word  66, 0   # the physical page number and the valid flag for virtual page 52
  80. .word  79, 0   # the physical page number and the valid flag for virtual page 53
  81. .word  30, 0   # the physical page number and the valid flag for virtual page 54
  82. .word  123, 0   # the physical page number and the valid flag for virtual page 55
  83. .word  119, 0   # the physical page number and the valid flag for virtual page 56
  84. .word  120, 0   # the physical page number and the valid flag for virtual page 57
  85. .word  9, 0   # the physical page number and the valid flag for virtual page 58
  86. .word  76, 0   # the physical page number and the valid flag for virtual page 59
  87. .word  18, 0   # the physical page number and the valid flag for virtual page 60
  88. .word  71, 0   # the physical page number and the valid flag for virtual page 61
  89. .word  3, 0   # the physical page number and the valid flag for virtual page 62
  90. .word  109, 0   # the physical page number and the valid flag for virtual page 63
  91. .word  64, 0   # the physical page number and the valid flag for virtual page 64
  92. .word  61, 0   # the physical page number and the valid flag for virtual page 65
  93. .word  85, 0   # the physical page number and the valid flag for virtual page 66
  94. .word  17, 0   # the physical page number and the valid flag for virtual page 67
  95. .word  66, 0   # the physical page number and the valid flag for virtual page 68
  96. .word  48, 0   # the physical page number and the valid flag for virtual page 69
  97. .word  84, 0   # the physical page number and the valid flag for virtual page 70
  98. .word  76, 0   # the physical page number and the valid flag for virtual page 71
  99. .word  41, 0   # the physical page number and the valid flag for virtual page 72
  100. .word  121, 0   # the physical page number and the valid flag for virtual page 73
  101. .word  66, 0   # the physical page number and the valid flag for virtual page 74
  102. .word  106, 0   # the physical page number and the valid flag for virtual page 75
  103. .word  93, 0   # the physical page number and the valid flag for virtual page 76
  104. .word  110, 0   # the physical page number and the valid flag for virtual page 77
  105. .word  111, 0   # the physical page number and the valid flag for virtual page 78
  106. .word  5, 0   # the physical page number and the valid flag for virtual page 79
  107. .word  100, 0   # the physical page number and the valid flag for virtual page 80
  108. .word  16, 0   # the physical page number and the valid flag for virtual page 81
  109. .word  35, 0   # the physical page number and the valid flag for virtual page 82
  110. .word  87, 0   # the physical page number and the valid flag for virtual page 83
  111. .word  97, 0   # the physical page number and the valid flag for virtual page 84
  112. .word  5, 0   # the physical page number and the valid flag for virtual page 85
  113. .word  64, 0   # the physical page number and the valid flag for virtual page 86
  114. .word  76, 0   # the physical page number and the valid flag for virtual page 87
  115. .word  91, 0   # the physical page number and the valid flag for virtual page 88
  116. .word  72, 0   # the physical page number and the valid flag for virtual page 89
  117. .word  36, 0   # the physical page number and the valid flag for virtual page 90
  118. .word  91, 0   # the physical page number and the valid flag for virtual page 91
  119. .word  64, 0   # the physical page number and the valid flag for virtual page 92
  120. .word  31, 0   # the physical page number and the valid flag for virtual page 93
  121. .word  77, 0   # the physical page number and the valid flag for virtual page 94
  122. .word  23, 0   # the physical page number and the valid flag for virtual page 95
  123. .word  42, 0   # the physical page number and the valid flag for virtual page 96
  124. .word  77, 0   # the physical page number and the valid flag for virtual page 97
  125. .word  64, 0   # the physical page number and the valid flag for virtual page 98
  126. .word  1, 0   # the physical page number and the valid flag for virtual page 99
  127. .word  96, 0   # the physical page number and the valid flag for virtual page 100
  128. .word  9, 0   # the physical page number and the valid flag for virtual page 101
  129. .word  43, 0   # the physical page number and the valid flag for virtual page 102
  130. .word  33, 0   # the physical page number and the valid flag for virtual page 103
  131. .word  32, 0   # the physical page number and the valid flag for virtual page 104
  132. .word  48, 0   # the physical page number and the valid flag for virtual page 105
  133. .word  73, 0   # the physical page number and the valid flag for virtual page 106
  134. .word  85, 0   # the physical page number and the valid flag for virtual page 107
  135. .word  28, 0   # the physical page number and the valid flag for virtual page 108
  136. .word  55, 0   # the physical page number and the valid flag for virtual page 109
  137. .word  6, 0   # the physical page number and the valid flag for virtual page 110
  138. .word  104, 0   # the physical page number and the valid flag for virtual page 111
  139. .word  66, 0   # the physical page number and the valid flag for virtual page 112
  140. .word  99, 0   # the physical page number and the valid flag for virtual page 113
  141. .word  100, 0   # the physical page number and the valid flag for virtual page 114
  142. .word  102, 0   # the physical page number and the valid flag for virtual page 115
  143. .word  64, 0   # the physical page number and the valid flag for virtual page 116
  144. .word  60, 0   # the physical page number and the valid flag for virtual page 117
  145. .word  29, 0   # the physical page number and the valid flag for virtual page 118
  146. .word  47, 0   # the physical page number and the valid flag for virtual page 119
  147. .word  72, 0   # the physical page number and the valid flag for virtual page 120
  148. .word  63, 0   # the physical page number and the valid flag for virtual page 121
  149. .word  10, 0   # the physical page number and the valid flag for virtual page 122
  150. .word  75, 0   # the physical page number and the valid flag for virtual page 123
  151. .word  16, 0   # the physical page number and the valid flag for virtual page 124
  152. .word  83, 0   # the physical page number and the valid flag for virtual page 125
  153. .word  67, 0   # the physical page number and the valid flag for virtual page 126
  154. .word  125, 0   # the physical page number and the valid flag for virtual page 127
  155. .word  30, 0   # the physical page number and the valid flag for virtual page 128
  156. .word  126, 0   # the physical page number and the valid flag for virtual page 129
  157. .word  8, 0   # the physical page number and the valid flag for virtual page 130
  158. .word  27, 0   # the physical page number and the valid flag for virtual page 131
  159. .word  66, 0   # the physical page number and the valid flag for virtual page 132
  160. .word  89, 0   # the physical page number and the valid flag for virtual page 133
  161. .word  95, 0   # the physical page number and the valid flag for virtual page 134
  162. .word  28, 0   # the physical page number and the valid flag for virtual page 135
  163. .word  100, 0   # the physical page number and the valid flag for virtual page 136
  164. .word  65, 0   # the physical page number and the valid flag for virtual page 137
  165. .word  127, 0   # the physical page number and the valid flag for virtual page 138
  166. .word  115, 0   # the physical page number and the valid flag for virtual page 139
  167. .word  127, 0   # the physical page number and the valid flag for virtual page 140
  168. .word  80, 0   # the physical page number and the valid flag for virtual page 141
  169. .word  109, 0   # the physical page number and the valid flag for virtual page 142
  170. .word  28, 0   # the physical page number and the valid flag for virtual page 143
  171. .word  110, 0   # the physical page number and the valid flag for virtual page 144
  172. .word  11, 0   # the physical page number and the valid flag for virtual page 145
  173. .word  101, 0   # the physical page number and the valid flag for virtual page 146
  174. .word  116, 0   # the physical page number and the valid flag for virtual page 147
  175. .word  103, 0   # the physical page number and the valid flag for virtual page 148
  176. .word  93, 0   # the physical page number and the valid flag for virtual page 149
  177. .word  123, 0   # the physical page number and the valid flag for virtual page 150
  178. .word  77, 0   # the physical page number and the valid flag for virtual page 151
  179. .word  69, 0   # the physical page number and the valid flag for virtual page 152
  180. .word  69, 0   # the physical page number and the valid flag for virtual page 153
  181. .word  2, 0   # the physical page number and the valid flag for virtual page 154
  182. .word  66, 0   # the physical page number and the valid flag for virtual page 155
  183. .word  10, 0   # the physical page number and the valid flag for virtual page 156
  184. .word  75, 0   # the physical page number and the valid flag for virtual page 157
  185. .word  45, 0   # the physical page number and the valid flag for virtual page 158
  186. .word  72, 0   # the physical page number and the valid flag for virtual page 159
  187. .word  36, 0   # the physical page number and the valid flag for virtual page 160
  188. .word  56, 0   # the physical page number and the valid flag for virtual page 161
  189. .word  116, 0   # the physical page number and the valid flag for virtual page 162
  190. .word  6, 0   # the physical page number and the valid flag for virtual page 163
  191. .word  111, 0   # the physical page number and the valid flag for virtual page 164
  192. .word  6, 0   # the physical page number and the valid flag for virtual page 165
  193. .word  57, 0   # the physical page number and the valid flag for virtual page 166
  194. .word  103, 0   # the physical page number and the valid flag for virtual page 167
  195. .word  124, 0   # the physical page number and the valid flag for virtual page 168
  196. .word  22, 0   # the physical page number and the valid flag for virtual page 169
  197. .word  44, 0   # the physical page number and the valid flag for virtual page 170
  198. .word  109, 0   # the physical page number and the valid flag for virtual page 171
  199. .word  17, 0   # the physical page number and the valid flag for virtual page 172
  200. .word  33, 0   # the physical page number and the valid flag for virtual page 173
  201. .word  108, 0   # the physical page number and the valid flag for virtual page 174
  202. .word  72, 0   # the physical page number and the valid flag for virtual page 175
  203. .word  112, 0   # the physical page number and the valid flag for virtual page 176
  204. .word  113, 0   # the physical page number and the valid flag for virtual page 177
  205. .word  111, 0   # the physical page number and the valid flag for virtual page 178
  206. .word  39, 0   # the physical page number and the valid flag for virtual page 179
  207. .word  92, 0   # the physical page number and the valid flag for virtual page 180
  208. .word  81, 0   # the physical page number and the valid flag for virtual page 181
  209. .word  35, 0   # the physical page number and the valid flag for virtual page 182
  210. .word  78, 0   # the physical page number and the valid flag for virtual page 183
  211. .word  90, 0   # the physical page number and the valid flag for virtual page 184
  212. .word  66, 0   # the physical page number and the valid flag for virtual page 185
  213. .word  85, 0   # the physical page number and the valid flag for virtual page 186
  214. .word  104, 0   # the physical page number and the valid flag for virtual page 187
  215. .word  53, 0   # the physical page number and the valid flag for virtual page 188
  216. .word  111, 0   # the physical page number and the valid flag for virtual page 189
  217. .word  83, 0   # the physical page number and the valid flag for virtual page 190
  218. .word  31, 0   # the physical page number and the valid flag for virtual page 191
  219. .word  68, 0   # the physical page number and the valid flag for virtual page 192
  220. .word  99, 0   # the physical page number and the valid flag for virtual page 193
  221. .word  77, 0   # the physical page number and the valid flag for virtual page 194
  222. .word  107, 0   # the physical page number and the valid flag for virtual page 195
  223. .word  111, 0   # the physical page number and the valid flag for virtual page 196
  224. .word  122, 0   # the physical page number and the valid flag for virtual page 197
  225. .word  1, 0   # the physical page number and the valid flag for virtual page 198
  226. .word  39, 0   # the physical page number and the valid flag for virtual page 199
  227. .word  112, 0   # the physical page number and the valid flag for virtual page 200
  228. .word  21, 0   # the physical page number and the valid flag for virtual page 201
  229. .word  24, 0   # the physical page number and the valid flag for virtual page 202
  230. .word  106, 0   # the physical page number and the valid flag for virtual page 203
  231. .word  87, 0   # the physical page number and the valid flag for virtual page 204
  232. .word  18, 0   # the physical page number and the valid flag for virtual page 205
  233. .word  74, 0   # the physical page number and the valid flag for virtual page 206
  234. .word  20, 0   # the physical page number and the valid flag for virtual page 207
  235. .word  81, 0   # the physical page number and the valid flag for virtual page 208
  236. .word  124, 0   # the physical page number and the valid flag for virtual page 209
  237. .word  73, 0   # the physical page number and the valid flag for virtual page 210
  238. .word  39, 0   # the physical page number and the valid flag for virtual page 211
  239. .word  41, 0   # the physical page number and the valid flag for virtual page 212
  240. .word  126, 0   # the physical page number and the valid flag for virtual page 213
  241. .word  93, 0   # the physical page number and the valid flag for virtual page 214
  242. .word  89, 0   # the physical page number and the valid flag for virtual page 215
  243. .word  15, 0   # the physical page number and the valid flag for virtual page 216
  244. .word  30, 0   # the physical page number and the valid flag for virtual page 217
  245. .word  75, 0   # the physical page number and the valid flag for virtual page 218
  246. .word  103, 0   # the physical page number and the valid flag for virtual page 219
  247. .word  25, 0   # the physical page number and the valid flag for virtual page 220
  248. .word  40, 0   # the physical page number and the valid flag for virtual page 221
  249. .word  124, 0   # the physical page number and the valid flag for virtual page 222
  250. .word  43, 0   # the physical page number and the valid flag for virtual page 223
  251. .word  7, 0   # the physical page number and the valid flag for virtual page 224
  252. .word  103, 0   # the physical page number and the valid flag for virtual page 225
  253. .word  91, 0   # the physical page number and the valid flag for virtual page 226
  254. .word  113, 0   # the physical page number and the valid flag for virtual page 227
  255. .word  75, 0   # the physical page number and the valid flag for virtual page 228
  256. .word  27, 0   # the physical page number and the valid flag for virtual page 229
  257. .word  127, 0   # the physical page number and the valid flag for virtual page 230
  258. .word  7, 0   # the physical page number and the valid flag for virtual page 231
  259. .word  73, 0   # the physical page number and the valid flag for virtual page 232
  260. .word  40, 0   # the physical page number and the valid flag for virtual page 233
  261. .word  10, 0   # the physical page number and the valid flag for virtual page 234
  262. .word  19, 0   # the physical page number and the valid flag for virtual page 235
  263. .word  91, 0   # the physical page number and the valid flag for virtual page 236
  264. .word  12, 0   # the physical page number and the valid flag for virtual page 237
  265. .word  81, 0   # the physical page number and the valid flag for virtual page 238
  266. .word  41, 0   # the physical page number and the valid flag for virtual page 239
  267. .word  24, 0   # the physical page number and the valid flag for virtual page 240
  268. .word  19, 0   # the physical page number and the valid flag for virtual page 241
  269. .word  61, 0   # the physical page number and the valid flag for virtual page 242
  270. .word  29, 0   # the physical page number and the valid flag for virtual page 243
  271. .word  86, 0   # the physical page number and the valid flag for virtual page 244
  272. .word  78, 0   # the physical page number and the valid flag for virtual page 245
  273. .word  113, 0   # the physical page number and the valid flag for virtual page 246
  274. .word  22, 0   # the physical page number and the valid flag for virtual page 247
  275. .word  109, 0   # the physical page number and the valid flag for virtual page 248
  276. .word  65, 0   # the physical page number and the valid flag for virtual page 249
  277. .word  44, 0   # the physical page number and the valid flag for virtual page 250
  278. .word  100, 0   # the physical page number and the valid flag for virtual page 251
  279. .word  62, 0   # the physical page number and the valid flag for virtual page 252
  280. .word  92, 0   # the physical page number and the valid flag for virtual page 253
  281. .word  113, 0   # the physical page number and the valid flag for virtual page 254
  282. .word  20, 0   # the physical page number and the valid flag for virtual page 255
  283. .word  116, 0   # the physical page number and the valid flag for virtual page 256
  284. .word  45, 0   # the physical page number and the valid flag for virtual page 257
  285. .word  102, 0   # the physical page number and the valid flag for virtual page 258
  286. .word  65, 0   # the physical page number and the valid flag for virtual page 259
  287. .word  10, 0   # the physical page number and the valid flag for virtual page 260
  288. .word  83, 0   # the physical page number and the valid flag for virtual page 261
  289. .word  123, 0   # the physical page number and the valid flag for virtual page 262
  290. .word  45, 0   # the physical page number and the valid flag for virtual page 263
  291. .word  14, 0   # the physical page number and the valid flag for virtual page 264
  292. .word  54, 0   # the physical page number and the valid flag for virtual page 265
  293. .word  75, 0   # the physical page number and the valid flag for virtual page 266
  294. .word  16, 0   # the physical page number and the valid flag for virtual page 267
  295. .word  36, 0   # the physical page number and the valid flag for virtual page 268
  296. .word  117, 0   # the physical page number and the valid flag for virtual page 269
  297. .word  71, 0   # the physical page number and the valid flag for virtual page 270
  298. .word  47, 0   # the physical page number and the valid flag for virtual page 271
  299. .word  77, 0   # the physical page number and the valid flag for virtual page 272
  300. .word  32, 0   # the physical page number and the valid flag for virtual page 273
  301. .word  17, 0   # the physical page number and the valid flag for virtual page 274
  302. .word  49, 0   # the physical page number and the valid flag for virtual page 275
  303. .word  105, 0   # the physical page number and the valid flag for virtual page 276
  304. .word  40, 0   # the physical page number and the valid flag for virtual page 277
  305. .word  38, 0   # the physical page number and the valid flag for virtual page 278
  306. .word  46, 0   # the physical page number and the valid flag for virtual page 279
  307. .word  123, 0   # the physical page number and the valid flag for virtual page 280
  308. .word  19, 0   # the physical page number and the valid flag for virtual page 281
  309. .word  64, 0   # the physical page number and the valid flag for virtual page 282
  310. .word  10, 0   # the physical page number and the valid flag for virtual page 283
  311. .word  45, 0   # the physical page number and the valid flag for virtual page 284
  312. .word  116, 0   # the physical page number and the valid flag for virtual page 285
  313. .word  123, 0   # the physical page number and the valid flag for virtual page 286
  314. .word  1, 0   # the physical page number and the valid flag for virtual page 287
  315. .word  20, 0   # the physical page number and the valid flag for virtual page 288
  316. .word  27, 0   # the physical page number and the valid flag for virtual page 289
  317. .word  54, 0   # the physical page number and the valid flag for virtual page 290
  318. .word  2, 0   # the physical page number and the valid flag for virtual page 291
  319. .word  52, 0   # the physical page number and the valid flag for virtual page 292
  320. .word  9, 0   # the physical page number and the valid flag for virtual page 293
  321. .word  60, 0   # the physical page number and the valid flag for virtual page 294
  322. .word  65, 0   # the physical page number and the valid flag for virtual page 295
  323. .word  71, 0   # the physical page number and the valid flag for virtual page 296
  324. .word  39, 0   # the physical page number and the valid flag for virtual page 297
  325. .word  36, 0   # the physical page number and the valid flag for virtual page 298
  326. .word  8, 0   # the physical page number and the valid flag for virtual page 299
  327. .word  58, 0   # the physical page number and the valid flag for virtual page 300
  328. .word  55, 0   # the physical page number and the valid flag for virtual page 301
  329. .word  117, 0   # the physical page number and the valid flag for virtual page 302
  330. .word  77, 0   # the physical page number and the valid flag for virtual page 303
  331. .word  121, 0   # the physical page number and the valid flag for virtual page 304
  332. .word  10, 0   # the physical page number and the valid flag for virtual page 305
  333. .word  14, 0   # the physical page number and the valid flag for virtual page 306
  334. .word  10, 0   # the physical page number and the valid flag for virtual page 307
  335. .word  108, 0   # the physical page number and the valid flag for virtual page 308
  336. .word  115, 0   # the physical page number and the valid flag for virtual page 309
  337. .word  69, 0   # the physical page number and the valid flag for virtual page 310
  338. .word  73, 0   # the physical page number and the valid flag for virtual page 311
  339. .word  65, 0   # the physical page number and the valid flag for virtual page 312
  340. .word  125, 0   # the physical page number and the valid flag for virtual page 313
  341. .word  79, 0   # the physical page number and the valid flag for virtual page 314
  342. .word  126, 0   # the physical page number and the valid flag for virtual page 315
  343. .word  109, 0   # the physical page number and the valid flag for virtual page 316
  344. .word  89, 0   # the physical page number and the valid flag for virtual page 317
  345. .word  96, 0   # the physical page number and the valid flag for virtual page 318
  346. .word  26, 0   # the physical page number and the valid flag for virtual page 319
  347. .word  109, 0   # the physical page number and the valid flag for virtual page 320
  348. .word  26, 0   # the physical page number and the valid flag for virtual page 321
  349. .word  18, 0   # the physical page number and the valid flag for virtual page 322
  350. .word  93, 0   # the physical page number and the valid flag for virtual page 323
  351. .word  82, 0   # the physical page number and the valid flag for virtual page 324
  352. .word  37, 0   # the physical page number and the valid flag for virtual page 325
  353. .word  11, 0   # the physical page number and the valid flag for virtual page 326
  354. .word  108, 0   # the physical page number and the valid flag for virtual page 327
  355. .word  124, 0   # the physical page number and the valid flag for virtual page 328
  356. .word  98, 0   # the physical page number and the valid flag for virtual page 329
  357. .word  90, 0   # the physical page number and the valid flag for virtual page 330
  358. .word  35, 0   # the physical page number and the valid flag for virtual page 331
  359. .word  38, 0   # the physical page number and the valid flag for virtual page 332
  360. .word  56, 0   # the physical page number and the valid flag for virtual page 333
  361. .word  35, 0   # the physical page number and the valid flag for virtual page 334
  362. .word  44, 0   # the physical page number and the valid flag for virtual page 335
  363. .word  35, 0   # the physical page number and the valid flag for virtual page 336
  364. .word  57, 0   # the physical page number and the valid flag for virtual page 337
  365. .word  124, 0   # the physical page number and the valid flag for virtual page 338
  366. .word  81, 0   # the physical page number and the valid flag for virtual page 339
  367. .word  102, 0   # the physical page number and the valid flag for virtual page 340
  368. .word  25, 0   # the physical page number and the valid flag for virtual page 341
  369. .word  22, 0   # the physical page number and the valid flag for virtual page 342
  370. .word  14, 0   # the physical page number and the valid flag for virtual page 343
  371. .word  72, 0   # the physical page number and the valid flag for virtual page 344
  372. .word  101, 0   # the physical page number and the valid flag for virtual page 345
  373. .word  32, 0   # the physical page number and the valid flag for virtual page 346
  374. .word  107, 0   # the physical page number and the valid flag for virtual page 347
  375. .word  6, 0   # the physical page number and the valid flag for virtual page 348
  376. .word  113, 0   # the physical page number and the valid flag for virtual page 349
  377. .word  104, 0   # the physical page number and the valid flag for virtual page 350
  378. .word  9, 0   # the physical page number and the valid flag for virtual page 351
  379. .word  9, 0   # the physical page number and the valid flag for virtual page 352
  380. .word  19, 0   # the physical page number and the valid flag for virtual page 353
  381. .word  68, 0   # the physical page number and the valid flag for virtual page 354
  382. .word  122, 0   # the physical page number and the valid flag for virtual page 355
  383. .word  107, 0   # the physical page number and the valid flag for virtual page 356
  384. .word  14, 0   # the physical page number and the valid flag for virtual page 357
  385. .word  48, 0   # the physical page number and the valid flag for virtual page 358
  386. .word  85, 0   # the physical page number and the valid flag for virtual page 359
  387. .word  54, 0   # the physical page number and the valid flag for virtual page 360
  388. .word  81, 0   # the physical page number and the valid flag for virtual page 361
  389. .word  56, 0   # the physical page number and the valid flag for virtual page 362
  390. .word  10, 0   # the physical page number and the valid flag for virtual page 363
  391. .word  111, 0   # the physical page number and the valid flag for virtual page 364
  392. .word  98, 0   # the physical page number and the valid flag for virtual page 365
  393. .word  25, 0   # the physical page number and the valid flag for virtual page 366
  394. .word  116, 0   # the physical page number and the valid flag for virtual page 367
  395. .word  83, 0   # the physical page number and the valid flag for virtual page 368
  396. .word  21, 0   # the physical page number and the valid flag for virtual page 369
  397. .word  35, 0   # the physical page number and the valid flag for virtual page 370
  398. .word  45, 0   # the physical page number and the valid flag for virtual page 371
  399. .word  96, 0   # the physical page number and the valid flag for virtual page 372
  400. .word  1, 0   # the physical page number and the valid flag for virtual page 373
  401. .word  97, 0   # the physical page number and the valid flag for virtual page 374
  402. .word  38, 0   # the physical page number and the valid flag for virtual page 375
  403. .word  23, 0   # the physical page number and the valid flag for virtual page 376
  404. .word  52, 0   # the physical page number and the valid flag for virtual page 377
  405. .word  124, 0   # the physical page number and the valid flag for virtual page 378
  406. .word  119, 0   # the physical page number and the valid flag for virtual page 379
  407. .word  1, 0   # the physical page number and the valid flag for virtual page 380
  408. .word  38, 0   # the physical page number and the valid flag for virtual page 381
  409. .word  93, 0   # the physical page number and the valid flag for virtual page 382
  410. .word  115, 0   # the physical page number and the valid flag for virtual page 383
  411. .word  112, 0   # the physical page number and the valid flag for virtual page 384
  412. .word  108, 0   # the physical page number and the valid flag for virtual page 385
  413. .word  18, 0   # the physical page number and the valid flag for virtual page 386
  414. .word  0, 0   # the physical page number and the valid flag for virtual page 387
  415. .word  7, 0   # the physical page number and the valid flag for virtual page 388
  416. .word  46, 0   # the physical page number and the valid flag for virtual page 389
  417. .word  115, 0   # the physical page number and the valid flag for virtual page 390
  418. .word  38, 0   # the physical page number and the valid flag for virtual page 391
  419. .word  124, 0   # the physical page number and the valid flag for virtual page 392
  420. .word  91, 0   # the physical page number and the valid flag for virtual page 393
  421. .word  5, 0   # the physical page number and the valid flag for virtual page 394
  422. .word  101, 0   # the physical page number and the valid flag for virtual page 395
  423. .word  29, 0   # the physical page number and the valid flag for virtual page 396
  424. .word  27, 0   # the physical page number and the valid flag for virtual page 397
  425. .word  30, 0   # the physical page number and the valid flag for virtual page 398
  426. .word  76, 0   # the physical page number and the valid flag for virtual page 399
  427. .word  17, 0   # the physical page number and the valid flag for virtual page 400
  428. .word  6, 0   # the physical page number and the valid flag for virtual page 401
  429. .word  74, 0   # the physical page number and the valid flag for virtual page 402
  430. .word  71, 0   # the physical page number and the valid flag for virtual page 403
  431. .word  97, 0   # the physical page number and the valid flag for virtual page 404
  432. .word  19, 0   # the physical page number and the valid flag for virtual page 405
  433. .word  110, 0   # the physical page number and the valid flag for virtual page 406
  434. .word  57, 0   # the physical page number and the valid flag for virtual page 407
  435. .word  55, 0   # the physical page number and the valid flag for virtual page 408
  436. .word  83, 0   # the physical page number and the valid flag for virtual page 409
  437. .word  43, 0   # the physical page number and the valid flag for virtual page 410
  438. .word  74, 0   # the physical page number and the valid flag for virtual page 411
  439. .word  101, 0   # the physical page number and the valid flag for virtual page 412
  440. .word  95, 0   # the physical page number and the valid flag for virtual page 413
  441. .word  5, 0   # the physical page number and the valid flag for virtual page 414
  442. .word  3, 0   # the physical page number and the valid flag for virtual page 415
  443. .word  40, 0   # the physical page number and the valid flag for virtual page 416
  444. .word  15, 0   # the physical page number and the valid flag for virtual page 417
  445. .word  69, 0   # the physical page number and the valid flag for virtual page 418
  446. .word  24, 0   # the physical page number and the valid flag for virtual page 419
  447. .word  46, 0   # the physical page number and the valid flag for virtual page 420
  448. .word  108, 0   # the physical page number and the valid flag for virtual page 421
  449. .word  27, 0   # the physical page number and the valid flag for virtual page 422
  450. .word  4, 0   # the physical page number and the valid flag for virtual page 423
  451. .word  87, 0   # the physical page number and the valid flag for virtual page 424
  452. .word  104, 0   # the physical page number and the valid flag for virtual page 425
  453. .word  8, 0   # the physical page number and the valid flag for virtual page 426
  454. .word  91, 0   # the physical page number and the valid flag for virtual page 427
  455. .word  57, 0   # the physical page number and the valid flag for virtual page 428
  456. .word  77, 0   # the physical page number and the valid flag for virtual page 429
  457. .word  123, 0   # the physical page number and the valid flag for virtual page 430
  458. .word  92, 0   # the physical page number and the valid flag for virtual page 431
  459. .word  102, 0   # the physical page number and the valid flag for virtual page 432
  460. .word  116, 0   # the physical page number and the valid flag for virtual page 433
  461. .word  59, 0   # the physical page number and the valid flag for virtual page 434
  462. .word  70, 0   # the physical page number and the valid flag for virtual page 435
  463. .word  113, 0   # the physical page number and the valid flag for virtual page 436
  464. .word  55, 0   # the physical page number and the valid flag for virtual page 437
  465. .word  4, 0   # the physical page number and the valid flag for virtual page 438
  466. .word  110, 0   # the physical page number and the valid flag for virtual page 439
  467. .word  46, 0   # the physical page number and the valid flag for virtual page 440
  468. .word  40, 0   # the physical page number and the valid flag for virtual page 441
  469. .word  117, 0   # the physical page number and the valid flag for virtual page 442
  470. .word  13, 0   # the physical page number and the valid flag for virtual page 443
  471. .word  58, 0   # the physical page number and the valid flag for virtual page 444
  472. .word  4, 0   # the physical page number and the valid flag for virtual page 445
  473. .word  42, 0   # the physical page number and the valid flag for virtual page 446
  474. .word  94, 0   # the physical page number and the valid flag for virtual page 447
  475. .word  59, 0   # the physical page number and the valid flag for virtual page 448
  476. .word  98, 0   # the physical page number and the valid flag for virtual page 449
  477. .word  37, 0   # the physical page number and the valid flag for virtual page 450
  478. .word  105, 0   # the physical page number and the valid flag for virtual page 451
  479. .word  105, 0   # the physical page number and the valid flag for virtual page 452
  480. .word  48, 0   # the physical page number and the valid flag for virtual page 453
  481. .word  114, 0   # the physical page number and the valid flag for virtual page 454
  482. .word  25, 0   # the physical page number and the valid flag for virtual page 455
  483. .word  78, 0   # the physical page number and the valid flag for virtual page 456
  484. .word  96, 0   # the physical page number and the valid flag for virtual page 457
  485. .word  10, 0   # the physical page number and the valid flag for virtual page 458
  486. .word  21, 0   # the physical page number and the valid flag for virtual page 459
  487. .word  73, 0   # the physical page number and the valid flag for virtual page 460
  488. .word  95, 0   # the physical page number and the valid flag for virtual page 461
  489. .word  121, 0   # the physical page number and the valid flag for virtual page 462
  490. .word  77, 0   # the physical page number and the valid flag for virtual page 463
  491. .word  89, 0   # the physical page number and the valid flag for virtual page 464
  492. .word  71, 0   # the physical page number and the valid flag for virtual page 465
  493. .word  60, 0   # the physical page number and the valid flag for virtual page 466
  494. .word  83, 0   # the physical page number and the valid flag for virtual page 467
  495. .word  24, 0   # the physical page number and the valid flag for virtual page 468
  496. .word  85, 0   # the physical page number and the valid flag for virtual page 469
  497. .word  109, 0   # the physical page number and the valid flag for virtual page 470
  498. .word  109, 0   # the physical page number and the valid flag for virtual page 471
  499. .word  6, 0   # the physical page number and the valid flag for virtual page 472
  500. .word  29, 0   # the physical page number and the valid flag for virtual page 473
  501. .word  34, 0   # the physical page number and the valid flag for virtual page 474
  502. .word  104, 0   # the physical page number and the valid flag for virtual page 475
  503. .word  8, 0   # the physical page number and the valid flag for virtual page 476
  504. .word  124, 0   # the physical page number and the valid flag for virtual page 477
  505. .word  18, 0   # the physical page number and the valid flag for virtual page 478
  506. .word  47, 0   # the physical page number and the valid flag for virtual page 479
  507. .word  49, 0   # the physical page number and the valid flag for virtual page 480
  508. .word  79, 0   # the physical page number and the valid flag for virtual page 481
  509. .word  121, 0   # the physical page number and the valid flag for virtual page 482
  510. .word  28, 0   # the physical page number and the valid flag for virtual page 483
  511. .word  63, 0   # the physical page number and the valid flag for virtual page 484
  512. .word  98, 0   # the physical page number and the valid flag for virtual page 485
  513. .word  62, 0   # the physical page number and the valid flag for virtual page 486
  514. .word  13, 0   # the physical page number and the valid flag for virtual page 487
  515. .word  105, 0   # the physical page number and the valid flag for virtual page 488
  516. .word  44, 0   # the physical page number and the valid flag for virtual page 489
  517. .word  83, 0   # the physical page number and the valid flag for virtual page 490
  518. .word  59, 0   # the physical page number and the valid flag for virtual page 491
  519. .word  88, 0   # the physical page number and the valid flag for virtual page 492
  520. .word  57, 0   # the physical page number and the valid flag for virtual page 493
  521. .word  94, 0   # the physical page number and the valid flag for virtual page 494
  522. .word  71, 0   # the physical page number and the valid flag for virtual page 495
  523. .word  115, 0   # the physical page number and the valid flag for virtual page 496
  524. .word  103, 0   # the physical page number and the valid flag for virtual page 497
  525. .word  22, 0   # the physical page number and the valid flag for virtual page 498
  526. .word  22, 0   # the physical page number and the valid flag for virtual page 499
  527. .word  95, 0   # the physical page number and the valid flag for virtual page 500
  528. .word  85, 0   # the physical page number and the valid flag for virtual page 501
  529. .word  111, 0   # the physical page number and the valid flag for virtual page 502
  530. .word  95, 0   # the physical page number and the valid flag for virtual page 503
  531. .word  70, 0   # the physical page number and the valid flag for virtual page 504
  532. .word  25, 0   # the physical page number and the valid flag for virtual page 505
  533. .word  121, 0   # the physical page number and the valid flag for virtual page 506
  534. .word  2, 0   # the physical page number and the valid flag for virtual page 507
  535. .word  88, 0   # the physical page number and the valid flag for virtual page 508
  536. .word  49, 0   # the physical page number and the valid flag for virtual page 509
  537. .word  5, 0   # the physical page number and the valid flag for virtual page 510
  538. .word  28, 0   # the physical page number and the valid flag for virtual page 511
  539. .word  16, 0   # the physical page number and the valid flag for virtual page 512
  540. .word  60, 0   # the physical page number and the valid flag for virtual page 513
  541. .word  11, 0   # the physical page number and the valid flag for virtual page 514
  542. .word  88, 0   # the physical page number and the valid flag for virtual page 515
  543. .word  57, 0   # the physical page number and the valid flag for virtual page 516
  544. .word  107, 0   # the physical page number and the valid flag for virtual page 517
  545. .word  72, 0   # the physical page number and the valid flag for virtual page 518
  546. .word  8, 0   # the physical page number and the valid flag for virtual page 519
  547. .word  48, 0   # the physical page number and the valid flag for virtual page 520
  548. .word  50, 0   # the physical page number and the valid flag for virtual page 521
  549. .word  43, 0   # the physical page number and the valid flag for virtual page 522
  550. .word  116, 0   # the physical page number and the valid flag for virtual page 523
  551. .word  107, 0   # the physical page number and the valid flag for virtual page 524
  552. .word  67, 0   # the physical page number and the valid flag for virtual page 525
  553. .word  114, 0   # the physical page number and the valid flag for virtual page 526
  554. .word  113, 0   # the physical page number and the valid flag for virtual page 527
  555. .word  58, 0   # the physical page number and the valid flag for virtual page 528
  556. .word  60, 0   # the physical page number and the valid flag for virtual page 529
  557. .word  17, 0   # the physical page number and the valid flag for virtual page 530
  558. .word  54, 0   # the physical page number and the valid flag for virtual page 531
  559. .word  77, 0   # the physical page number and the valid flag for virtual page 532
  560. .word  31, 0   # the physical page number and the valid flag for virtual page 533
  561. .word  83, 0   # the physical page number and the valid flag for virtual page 534
  562. .word  108, 0   # the physical page number and the valid flag for virtual page 535
  563. .word  119, 0   # the physical page number and the valid flag for virtual page 536
  564. .word  4, 0   # the physical page number and the valid flag for virtual page 537
  565. .word  67, 0   # the physical page number and the valid flag for virtual page 538
  566. .word  4, 0   # the physical page number and the valid flag for virtual page 539
  567. .word  49, 0   # the physical page number and the valid flag for virtual page 540
  568. .word  10, 0   # the physical page number and the valid flag for virtual page 541
  569. .word  77, 0   # the physical page number and the valid flag for virtual page 542
  570. .word  77, 0   # the physical page number and the valid flag for virtual page 543
  571. .word  98, 0   # the physical page number and the valid flag for virtual page 544
  572. .word  19, 0   # the physical page number and the valid flag for virtual page 545
  573. .word  33, 0   # the physical page number and the valid flag for virtual page 546
  574. .word  70, 0   # the physical page number and the valid flag for virtual page 547
  575. .word  94, 0   # the physical page number and the valid flag for virtual page 548
  576. .word  49, 0   # the physical page number and the valid flag for virtual page 549
  577. .word  88, 0   # the physical page number and the valid flag for virtual page 550
  578. .word  49, 0   # the physical page number and the valid flag for virtual page 551
  579. .word  44, 0   # the physical page number and the valid flag for virtual page 552
  580. .word  91, 0   # the physical page number and the valid flag for virtual page 553
  581. .word  90, 0   # the physical page number and the valid flag for virtual page 554
  582. .word  104, 0   # the physical page number and the valid flag for virtual page 555
  583. .word  12, 0   # the physical page number and the valid flag for virtual page 556
  584. .word  101, 0   # the physical page number and the valid flag for virtual page 557
  585. .word  127, 0   # the physical page number and the valid flag for virtual page 558
  586. .word  116, 0   # the physical page number and the valid flag for virtual page 559
  587. .word  56, 0   # the physical page number and the valid flag for virtual page 560
  588. .word  47, 0   # the physical page number and the valid flag for virtual page 561
  589. .word  116, 0   # the physical page number and the valid flag for virtual page 562
  590. .word  92, 0   # the physical page number and the valid flag for virtual page 563
  591. .word  107, 0   # the physical page number and the valid flag for virtual page 564
  592. .word  28, 0   # the physical page number and the valid flag for virtual page 565
  593. .word  97, 0   # the physical page number and the valid flag for virtual page 566
  594. .word  59, 0   # the physical page number and the valid flag for virtual page 567
  595. .word  32, 0   # the physical page number and the valid flag for virtual page 568
  596. .word  69, 0   # the physical page number and the valid flag for virtual page 569
  597. .word  72, 0   # the physical page number and the valid flag for virtual page 570
  598. .word  21, 0   # the physical page number and the valid flag for virtual page 571
  599. .word  28, 0   # the physical page number and the valid flag for virtual page 572
  600. .word  111, 0   # the physical page number and the valid flag for virtual page 573
  601. .word  49, 0   # the physical page number and the valid flag for virtual page 574
  602. .word  107, 0   # the physical page number and the valid flag for virtual page 575
  603. .word  46, 0   # the physical page number and the valid flag for virtual page 576
  604. .word  59, 0   # the physical page number and the valid flag for virtual page 577
  605. .word  4, 0   # the physical page number and the valid flag for virtual page 578
  606. .word  13, 0   # the physical page number and the valid flag for virtual page 579
  607. .word  54, 0   # the physical page number and the valid flag for virtual page 580
  608. .word  29, 0   # the physical page number and the valid flag for virtual page 581
  609. .word  54, 0   # the physical page number and the valid flag for virtual page 582
  610. .word  48, 0   # the physical page number and the valid flag for virtual page 583
  611. .word  100, 0   # the physical page number and the valid flag for virtual page 584
  612. .word  15, 0   # the physical page number and the valid flag for virtual page 585
  613. .word  39, 0   # the physical page number and the valid flag for virtual page 586
  614. .word  64, 0   # the physical page number and the valid flag for virtual page 587
  615. .word  66, 0   # the physical page number and the valid flag for virtual page 588
  616. .word  7, 0   # the physical page number and the valid flag for virtual page 589
  617. .word  75, 0   # the physical page number and the valid flag for virtual page 590
  618. .word  120, 0   # the physical page number and the valid flag for virtual page 591
  619. .word  117, 0   # the physical page number and the valid flag for virtual page 592
  620. .word  38, 0   # the physical page number and the valid flag for virtual page 593
  621. .word  9, 0   # the physical page number and the valid flag for virtual page 594
  622. .word  47, 0   # the physical page number and the valid flag for virtual page 595
  623. .word  64, 0   # the physical page number and the valid flag for virtual page 596
  624. .word  50, 0   # the physical page number and the valid flag for virtual page 597
  625. .word  96, 0   # the physical page number and the valid flag for virtual page 598
  626. .word  117, 0   # the physical page number and the valid flag for virtual page 599
  627. .word  73, 0   # the physical page number and the valid flag for virtual page 600
  628. .word  70, 0   # the physical page number and the valid flag for virtual page 601
  629. .word  80, 0   # the physical page number and the valid flag for virtual page 602
  630. .word  94, 0   # the physical page number and the valid flag for virtual page 603
  631. .word  32, 0   # the physical page number and the valid flag for virtual page 604
  632. .word  72, 0   # the physical page number and the valid flag for virtual page 605
  633. .word  120, 0   # the physical page number and the valid flag for virtual page 606
  634. .word  30, 0   # the physical page number and the valid flag for virtual page 607
  635. .word  125, 0   # the physical page number and the valid flag for virtual page 608
  636. .word  28, 0   # the physical page number and the valid flag for virtual page 609
  637. .word  124, 0   # the physical page number and the valid flag for virtual page 610
  638. .word  86, 0   # the physical page number and the valid flag for virtual page 611
  639. .word  73, 0   # the physical page number and the valid flag for virtual page 612
  640. .word  23, 0   # the physical page number and the valid flag for virtual page 613
  641. .word  41, 0   # the physical page number and the valid flag for virtual page 614
  642. .word  46, 0   # the physical page number and the valid flag for virtual page 615
  643. .word  96, 0   # the physical page number and the valid flag for virtual page 616
  644. .word  55, 0   # the physical page number and the valid flag for virtual page 617
  645. .word  92, 0   # the physical page number and the valid flag for virtual page 618
  646. .word  36, 0   # the physical page number and the valid flag for virtual page 619
  647. .word  22, 0   # the physical page number and the valid flag for virtual page 620
  648. .word  17, 0   # the physical page number and the valid flag for virtual page 621
  649. .word  31, 0   # the physical page number and the valid flag for virtual page 622
  650. .word  36, 0   # the physical page number and the valid flag for virtual page 623
  651. .word  120, 0   # the physical page number and the valid flag for virtual page 624
  652. .word  10, 0   # the physical page number and the valid flag for virtual page 625
  653. .word  22, 0   # the physical page number and the valid flag for virtual page 626
  654. .word  88, 0   # the physical page number and the valid flag for virtual page 627
  655. .word  84, 0   # the physical page number and the valid flag for virtual page 628
  656. .word  74, 0   # the physical page number and the valid flag for virtual page 629
  657. .word  26, 0   # the physical page number and the valid flag for virtual page 630
  658. .word  65, 0   # the physical page number and the valid flag for virtual page 631
  659. .word  123, 0   # the physical page number and the valid flag for virtual page 632
  660. .word  110, 0   # the physical page number and the valid flag for virtual page 633
  661. .word  35, 0   # the physical page number and the valid flag for virtual page 634
  662. .word  7, 0   # the physical page number and the valid flag for virtual page 635
  663. .word  69, 0   # the physical page number and the valid flag for virtual page 636
  664. .word  125, 0   # the physical page number and the valid flag for virtual page 637
  665. .word  107, 0   # the physical page number and the valid flag for virtual page 638
  666. .word  13, 0   # the physical page number and the valid flag for virtual page 639
  667. .word  86, 0   # the physical page number and the valid flag for virtual page 640
  668. .word  30, 0   # the physical page number and the valid flag for virtual page 641
  669. .word  80, 0   # the physical page number and the valid flag for virtual page 642
  670. .word  73, 0   # the physical page number and the valid flag for virtual page 643
  671. .word  32, 0   # the physical page number and the valid flag for virtual page 644
  672. .word  8, 0   # the physical page number and the valid flag for virtual page 645
  673. .word  122, 0   # the physical page number and the valid flag for virtual page 646
  674. .word  83, 0   # the physical page number and the valid flag for virtual page 647
  675. .word  41, 0   # the physical page number and the valid flag for virtual page 648
  676. .word  57, 0   # the physical page number and the valid flag for virtual page 649
  677. .word  63, 0   # the physical page number and the valid flag for virtual page 650
  678. .word  59, 0   # the physical page number and the valid flag for virtual page 651
  679. .word  14, 0   # the physical page number and the valid flag for virtual page 652
  680. .word  107, 0   # the physical page number and the valid flag for virtual page 653
  681. .word  67, 0   # the physical page number and the valid flag for virtual page 654
  682. .word  32, 0   # the physical page number and the valid flag for virtual page 655
  683. .word  73, 0   # the physical page number and the valid flag for virtual page 656
  684. .word  68, 0   # the physical page number and the valid flag for virtual page 657
  685. .word  100, 0   # the physical page number and the valid flag for virtual page 658
  686. .word  126, 0   # the physical page number and the valid flag for virtual page 659
  687. .word  47, 0   # the physical page number and the valid flag for virtual page 660
  688. .word  77, 0   # the physical page number and the valid flag for virtual page 661
  689. .word  85, 0   # the physical page number and the valid flag for virtual page 662
  690. .word  72, 0   # the physical page number and the valid flag for virtual page 663
  691. .word  60, 0   # the physical page number and the valid flag for virtual page 664
  692. .word  37, 0   # the physical page number and the valid flag for virtual page 665
  693. .word  8, 0   # the physical page number and the valid flag for virtual page 666
  694. .word  55, 0   # the physical page number and the valid flag for virtual page 667
  695. .word  19, 0   # the physical page number and the valid flag for virtual page 668
  696. .word  119, 0   # the physical page number and the valid flag for virtual page 669
  697. .word  82, 0   # the physical page number and the valid flag for virtual page 670
  698. .word  97, 0   # the physical page number and the valid flag for virtual page 671
  699. .word  65, 0   # the physical page number and the valid flag for virtual page 672
  700. .word  41, 0   # the physical page number and the valid flag for virtual page 673
  701. .word  74, 0   # the physical page number and the valid flag for virtual page 674
  702. .word  13, 0   # the physical page number and the valid flag for virtual page 675
  703. .word  66, 0   # the physical page number and the valid flag for virtual page 676
  704. .word  86, 0   # the physical page number and the valid flag for virtual page 677
  705. .word  114, 0   # the physical page number and the valid flag for virtual page 678
  706. .word  70, 0   # the physical page number and the valid flag for virtual page 679
  707. .word  70, 0   # the physical page number and the valid flag for virtual page 680
  708. .word  127, 0   # the physical page number and the valid flag for virtual page 681
  709. .word  25, 0   # the physical page number and the valid flag for virtual page 682
  710. .word  46, 0   # the physical page number and the valid flag for virtual page 683
  711. .word  53, 0   # the physical page number and the valid flag for virtual page 684
  712. .word  125, 0   # the physical page number and the valid flag for virtual page 685
  713. .word  127, 0   # the physical page number and the valid flag for virtual page 686
  714. .word  21, 0   # the physical page number and the valid flag for virtual page 687
  715. .word  112, 0   # the physical page number and the valid flag for virtual page 688
  716. .word  58, 0   # the physical page number and the valid flag for virtual page 689
  717. .word  59, 0   # the physical page number and the valid flag for virtual page 690
  718. .word  74, 0   # the physical page number and the valid flag for virtual page 691
  719. .word  90, 0   # the physical page number and the valid flag for virtual page 692
  720. .word  33, 0   # the physical page number and the valid flag for virtual page 693
  721. .word  90, 0   # the physical page number and the valid flag for virtual page 694
  722. .word  49, 0   # the physical page number and the valid flag for virtual page 695
  723. .word  23, 0   # the physical page number and the valid flag for virtual page 696
  724. .word  83, 0   # the physical page number and the valid flag for virtual page 697
  725. .word  73, 0   # the physical page number and the valid flag for virtual page 698
  726. .word  22, 0   # the physical page number and the valid flag for virtual page 699
  727. .word  19, 0   # the physical page number and the valid flag for virtual page 700
  728. .word  28, 0   # the physical page number and the valid flag for virtual page 701
  729. .word  117, 0   # the physical page number and the valid flag for virtual page 702
  730. .word  65, 0   # the physical page number and the valid flag for virtual page 703
  731. .word  70, 0   # the physical page number and the valid flag for virtual page 704
  732. .word  37, 0   # the physical page number and the valid flag for virtual page 705
  733. .word  48, 0   # the physical page number and the valid flag for virtual page 706
  734. .word  75, 0   # the physical page number and the valid flag for virtual page 707
  735. .word  55, 0   # the physical page number and the valid flag for virtual page 708
  736. .word  107, 0   # the physical page number and the valid flag for virtual page 709
  737. .word  87, 0   # the physical page number and the valid flag for virtual page 710
  738. .word  48, 0   # the physical page number and the valid flag for virtual page 711
  739. .word  63, 0   # the physical page number and the valid flag for virtual page 712
  740. .word  111, 0   # the physical page number and the valid flag for virtual page 713
  741. .word  49, 0   # the physical page number and the valid flag for virtual page 714
  742. .word  36, 0   # the physical page number and the valid flag for virtual page 715
  743. .word  16, 0   # the physical page number and the valid flag for virtual page 716
  744. .word  48, 0   # the physical page number and the valid flag for virtual page 717
  745. .word  27, 0   # the physical page number and the valid flag for virtual page 718
  746. .word  43, 0   # the physical page number and the valid flag for virtual page 719
  747. .word  117, 0   # the physical page number and the valid flag for virtual page 720
  748. .word  86, 0   # the physical page number and the valid flag for virtual page 721
  749. .word  98, 0   # the physical page number and the valid flag for virtual page 722
  750. .word  100, 0   # the physical page number and the valid flag for virtual page 723
  751. .word  92, 0   # the physical page number and the valid flag for virtual page 724
  752. .word  48, 0   # the physical page number and the valid flag for virtual page 725
  753. .word  113, 0   # the physical page number and the valid flag for virtual page 726
  754. .word  37, 0   # the physical page number and the valid flag for virtual page 727
  755. .word  17, 0   # the physical page number and the valid flag for virtual page 728
  756. .word  96, 0   # the physical page number and the valid flag for virtual page 729
  757. .word  44, 0   # the physical page number and the valid flag for virtual page 730
  758. .word  77, 0   # the physical page number and the valid flag for virtual page 731
  759. .word  76, 0   # the physical page number and the valid flag for virtual page 732
  760. .word  85, 0   # the physical page number and the valid flag for virtual page 733
  761. .word  27, 0   # the physical page number and the valid flag for virtual page 734
  762. .word  86, 0   # the physical page number and the valid flag for virtual page 735
  763. .word  110, 0   # the physical page number and the valid flag for virtual page 736
  764. .word  122, 0   # the physical page number and the valid flag for virtual page 737
  765. .word  75, 0   # the physical page number and the valid flag for virtual page 738
  766. .word  42, 0   # the physical page number and the valid flag for virtual page 739
  767. .word  8, 0   # the physical page number and the valid flag for virtual page 740
  768. .word  45, 0   # the physical page number and the valid flag for virtual page 741
  769. .word  113, 0   # the physical page number and the valid flag for virtual page 742
  770. .word  56, 0   # the physical page number and the valid flag for virtual page 743
  771. .word  29, 0   # the physical page number and the valid flag for virtual page 744
  772. .word  115, 0   # the physical page number and the valid flag for virtual page 745
  773. .word  81, 0   # the physical page number and the valid flag for virtual page 746
  774. .word  70, 0   # the physical page number and the valid flag for virtual page 747
  775. .word  41, 0   # the physical page number and the valid flag for virtual page 748
  776. .word  106, 0   # the physical page number and the valid flag for virtual page 749
  777. .word  94, 0   # the physical page number and the valid flag for virtual page 750
  778. .word  9, 0   # the physical page number and the valid flag for virtual page 751
  779. .word  97, 0   # the physical page number and the valid flag for virtual page 752
  780. .word  127, 0   # the physical page number and the valid flag for virtual page 753
  781. .word  35, 0   # the physical page number and the valid flag for virtual page 754
  782. .word  115, 0   # the physical page number and the valid flag for virtual page 755
  783. .word  61, 0   # the physical page number and the valid flag for virtual page 756
  784. .word  96, 0   # the physical page number and the valid flag for virtual page 757
  785. .word  97, 0   # the physical page number and the valid flag for virtual page 758
  786. .word  76, 0   # the physical page number and the valid flag for virtual page 759
  787. .word  52, 0   # the physical page number and the valid flag for virtual page 760
  788. .word  53, 0   # the physical page number and the valid flag for virtual page 761
  789. .word  122, 0   # the physical page number and the valid flag for virtual page 762
  790. .word  4, 0   # the physical page number and the valid flag for virtual page 763
  791. .word  70, 0   # the physical page number and the valid flag for virtual page 764
  792. .word  11, 0   # the physical page number and the valid flag for virtual page 765
  793. .word  13, 0   # the physical page number and the valid flag for virtual page 766
  794. .word  72, 0   # the physical page number and the valid flag for virtual page 767
  795. .word  64, 0   # the physical page number and the valid flag for virtual page 768
  796. .word  16, 0   # the physical page number and the valid flag for virtual page 769
  797. .word  99, 0   # the physical page number and the valid flag for virtual page 770
  798. .word  83, 0   # the physical page number and the valid flag for virtual page 771
  799. .word  60, 0   # the physical page number and the valid flag for virtual page 772
  800. .word  6, 0   # the physical page number and the valid flag for virtual page 773
  801. .word  10, 0   # the physical page number and the valid flag for virtual page 774
  802. .word  7, 0   # the physical page number and the valid flag for virtual page 775
  803. .word  103, 0   # the physical page number and the valid flag for virtual page 776
  804. .word  114, 0   # the physical page number and the valid flag for virtual page 777
  805. .word  63, 0   # the physical page number and the valid flag for virtual page 778
  806. .word  60, 0   # the physical page number and the valid flag for virtual page 779
  807. .word  7, 0   # the physical page number and the valid flag for virtual page 780
  808. .word  20, 0   # the physical page number and the valid flag for virtual page 781
  809. .word  18, 0   # the physical page number and the valid flag for virtual page 782
  810. .word  88, 0   # the physical page number and the valid flag for virtual page 783
  811. .word  60, 0   # the physical page number and the valid flag for virtual page 784
  812. .word  28, 0   # the physical page number and the valid flag for virtual page 785
  813. .word  68, 0   # the physical page number and the valid flag for virtual page 786
  814. .word  31, 0   # the physical page number and the valid flag for virtual page 787
  815. .word  5, 0   # the physical page number and the valid flag for virtual page 788
  816. .word  27, 0   # the physical page number and the valid flag for virtual page 789
  817. .word  116, 0   # the physical page number and the valid flag for virtual page 790
  818. .word  77, 0   # the physical page number and the valid flag for virtual page 791
  819. .word  7, 0   # the physical page number and the valid flag for virtual page 792
  820. .word  56, 0   # the physical page number and the valid flag for virtual page 793
  821. .word  122, 0   # the physical page number and the valid flag for virtual page 794
  822. .word  98, 0   # the physical page number and the valid flag for virtual page 795
  823. .word  10, 0   # the physical page number and the valid flag for virtual page 796
  824. .word  36, 0   # the physical page number and the valid flag for virtual page 797
  825. .word  20, 0   # the physical page number and the valid flag for virtual page 798
  826. .word  62, 0   # the physical page number and the valid flag for virtual page 799
  827. .word  69, 0   # the physical page number and the valid flag for virtual page 800
  828. .word  80, 0   # the physical page number and the valid flag for virtual page 801
  829. .word  64, 0   # the physical page number and the valid flag for virtual page 802
  830. .word  109, 0   # the physical page number and the valid flag for virtual page 803
  831. .word  91, 0   # the physical page number and the valid flag for virtual page 804
  832. .word  93, 0   # the physical page number and the valid flag for virtual page 805
  833. .word  104, 0   # the physical page number and the valid flag for virtual page 806
  834. .word  68, 0   # the physical page number and the valid flag for virtual page 807
  835. .word  37, 0   # the physical page number and the valid flag for virtual page 808
  836. .word  84, 0   # the physical page number and the valid flag for virtual page 809
  837. .word  68, 0   # the physical page number and the valid flag for virtual page 810
  838. .word  45, 0   # the physical page number and the valid flag for virtual page 811
  839. .word  50, 0   # the physical page number and the valid flag for virtual page 812
  840. .word  23, 0   # the physical page number and the valid flag for virtual page 813
  841. .word  125, 0   # the physical page number and the valid flag for virtual page 814
  842. .word  63, 0   # the physical page number and the valid flag for virtual page 815
  843. .word  12, 0   # the physical page number and the valid flag for virtual page 816
  844. .word  23, 0   # the physical page number and the valid flag for virtual page 817
  845. .word  14, 0   # the physical page number and the valid flag for virtual page 818
  846. .word  18, 0   # the physical page number and the valid flag for virtual page 819
  847. .word  61, 0   # the physical page number and the valid flag for virtual page 820
  848. .word  72, 0   # the physical page number and the valid flag for virtual page 821
  849. .word  112, 0   # the physical page number and the valid flag for virtual page 822
  850. .word  81, 0   # the physical page number and the valid flag for virtual page 823
  851. .word  18, 0   # the physical page number and the valid flag for virtual page 824
  852. .word  82, 0   # the physical page number and the valid flag for virtual page 825
  853. .word  118, 0   # the physical page number and the valid flag for virtual page 826
  854. .word  16, 0   # the physical page number and the valid flag for virtual page 827
  855. .word  31, 0   # the physical page number and the valid flag for virtual page 828
  856. .word  10, 0   # the physical page number and the valid flag for virtual page 829
  857. .word  118, 0   # the physical page number and the valid flag for virtual page 830
  858. .word  96, 0   # the physical page number and the valid flag for virtual page 831
  859. .word  3, 0   # the physical page number and the valid flag for virtual page 832
  860. .word  32, 0   # the physical page number and the valid flag for virtual page 833
  861. .word  41, 0   # the physical page number and the valid flag for virtual page 834
  862. .word  33, 0   # the physical page number and the valid flag for virtual page 835
  863. .word  110, 0   # the physical page number and the valid flag for virtual page 836
  864. .word  25, 0   # the physical page number and the valid flag for virtual page 837
  865. .word  84, 0   # the physical page number and the valid flag for virtual page 838
  866. .word  24, 0   # the physical page number and the valid flag for virtual page 839
  867. .word  96, 0   # the physical page number and the valid flag for virtual page 840
  868. .word  0, 0   # the physical page number and the valid flag for virtual page 841
  869. .word  40, 0   # the physical page number and the valid flag for virtual page 842
  870. .word  66, 0   # the physical page number and the valid flag for virtual page 843
  871. .word  51, 0   # the physical page number and the valid flag for virtual page 844
  872. .word  89, 0   # the physical page number and the valid flag for virtual page 845
  873. .word  103, 0   # the physical page number and the valid flag for virtual page 846
  874. .word  103, 0   # the physical page number and the valid flag for virtual page 847
  875. .word  91, 0   # the physical page number and the valid flag for virtual page 848
  876. .word  87, 0   # the physical page number and the valid flag for virtual page 849
  877. .word  73, 0   # the physical page number and the valid flag for virtual page 850
  878. .word  113, 0   # the physical page number and the valid flag for virtual page 851
  879. .word  109, 0   # the physical page number and the valid flag for virtual page 852
  880. .word  79, 0   # the physical page number and the valid flag for virtual page 853
  881. .word  30, 0   # the physical page number and the valid flag for virtual page 854
  882. .word  127, 0   # the physical page number and the valid flag for virtual page 855
  883. .word  94, 0   # the physical page number and the valid flag for virtual page 856
  884. .word  107, 0   # the physical page number and the valid flag for virtual page 857
  885. .word  52, 0   # the physical page number and the valid flag for virtual page 858
  886. .word  54, 0   # the physical page number and the valid flag for virtual page 859
  887. .word  13, 0   # the physical page number and the valid flag for virtual page 860
  888. .word  35, 0   # the physical page number and the valid flag for virtual page 861
  889. .word  123, 0   # the physical page number and the valid flag for virtual page 862
  890. .word  87, 0   # the physical page number and the valid flag for virtual page 863
  891. .word  4, 0   # the physical page number and the valid flag for virtual page 864
  892. .word  105, 0   # the physical page number and the valid flag for virtual page 865
  893. .word  103, 0   # the physical page number and the valid flag for virtual page 866
  894. .word  23, 0   # the physical page number and the valid flag for virtual page 867
  895. .word  123, 0   # the physical page number and the valid flag for virtual page 868
  896. .word  36, 0   # the physical page number and the valid flag for virtual page 869
  897. .word  22, 0   # the physical page number and the valid flag for virtual page 870
  898. .word  43, 0   # the physical page number and the valid flag for virtual page 871
  899. .word  30, 0   # the physical page number and the valid flag for virtual page 872
  900. .word  96, 0   # the physical page number and the valid flag for virtual page 873
  901. .word  51, 0   # the physical page number and the valid flag for virtual page 874
  902. .word  34, 0   # the physical page number and the valid flag for virtual page 875
  903. .word  17, 0   # the physical page number and the valid flag for virtual page 876
  904. .word  68, 0   # the physical page number and the valid flag for virtual page 877
  905. .word  26, 0   # the physical page number and the valid flag for virtual page 878
  906. .word  119, 0   # the physical page number and the valid flag for virtual page 879
  907. .word  48, 0   # the physical page number and the valid flag for virtual page 880
  908. .word  68, 0   # the physical page number and the valid flag for virtual page 881
  909. .word  61, 0   # the physical page number and the valid flag for virtual page 882
  910. .word  103, 0   # the physical page number and the valid flag for virtual page 883
  911. .word  27, 0   # the physical page number and the valid flag for virtual page 884
  912. .word  24, 0   # the physical page number and the valid flag for virtual page 885
  913. .word  70, 0   # the physical page number and the valid flag for virtual page 886
  914. .word  0, 0   # the physical page number and the valid flag for virtual page 887
  915. .word  114, 0   # the physical page number and the valid flag for virtual page 888
  916. .word  108, 0   # the physical page number and the valid flag for virtual page 889
  917. .word  126, 0   # the physical page number and the valid flag for virtual page 890
  918. .word  123, 0   # the physical page number and the valid flag for virtual page 891
  919. .word  93, 0   # the physical page number and the valid flag for virtual page 892
  920. .word  89, 0   # the physical page number and the valid flag for virtual page 893
  921. .word  109, 0   # the physical page number and the valid flag for virtual page 894
  922. .word  75, 0   # the physical page number and the valid flag for virtual page 895
  923. .word  80, 0   # the physical page number and the valid flag for virtual page 896
  924. .word  20, 0   # the physical page number and the valid flag for virtual page 897
  925. .word  67, 0   # the physical page number and the valid flag for virtual page 898
  926. .word  118, 0   # the physical page number and the valid flag for virtual page 899
  927. .word  13, 0   # the physical page number and the valid flag for virtual page 900
  928. .word  101, 0   # the physical page number and the valid flag for virtual page 901
  929. .word  118, 0   # the physical page number and the valid flag for virtual page 902
  930. .word  36, 0   # the physical page number and the valid flag for virtual page 903
  931. .word  106, 0   # the physical page number and the valid flag for virtual page 904
  932. .word  91, 0   # the physical page number and the valid flag for virtual page 905
  933. .word  45, 0   # the physical page number and the valid flag for virtual page 906
  934. .word  117, 0   # the physical page number and the valid flag for virtual page 907
  935. .word  84, 0   # the physical page number and the valid flag for virtual page 908
  936. .word  63, 0   # the physical page number and the valid flag for virtual page 909
  937. .word  93, 0   # the physical page number and the valid flag for virtual page 910
  938. .word  24, 0   # the physical page number and the valid flag for virtual page 911
  939. .word  20, 0   # the physical page number and the valid flag for virtual page 912
  940. .word  70, 0   # the physical page number and the valid flag for virtual page 913
  941. .word  49, 0   # the physical page number and the valid flag for virtual page 914
  942. .word  26, 0   # the physical page number and the valid flag for virtual page 915
  943. .word  81, 0   # the physical page number and the valid flag for virtual page 916
  944. .word  10, 0   # the physical page number and the valid flag for virtual page 917
  945. .word  48, 0   # the physical page number and the valid flag for virtual page 918
  946. .word  123, 0   # the physical page number and the valid flag for virtual page 919
  947. .word  86, 0   # the physical page number and the valid flag for virtual page 920
  948. .word  59, 0   # the physical page number and the valid flag for virtual page 921
  949. .word  26, 0   # the physical page number and the valid flag for virtual page 922
  950. .word  7, 0   # the physical page number and the valid flag for virtual page 923
  951. .word  22, 0   # the physical page number and the valid flag for virtual page 924
  952. .word  18, 0   # the physical page number and the valid flag for virtual page 925
  953. .word  18, 0   # the physical page number and the valid flag for virtual page 926
  954. .word  99, 0   # the physical page number and the valid flag for virtual page 927
  955. .word  109, 0   # the physical page number and the valid flag for virtual page 928
  956. .word  7, 0   # the physical page number and the valid flag for virtual page 929
  957. .word  2, 0   # the physical page number and the valid flag for virtual page 930
  958. .word  103, 0   # the physical page number and the valid flag for virtual page 931
  959. .word  41, 0   # the physical page number and the valid flag for virtual page 932
  960. .word  68, 0   # the physical page number and the valid flag for virtual page 933
  961. .word  60, 0   # the physical page number and the valid flag for virtual page 934
  962. .word  43, 0   # the physical page number and the valid flag for virtual page 935
  963. .word  73, 0   # the physical page number and the valid flag for virtual page 936
  964. .word  89, 0   # the physical page number and the valid flag for virtual page 937
  965. .word  93, 0   # the physical page number and the valid flag for virtual page 938
  966. .word  101, 0   # the physical page number and the valid flag for virtual page 939
  967. .word  5, 0   # the physical page number and the valid flag for virtual page 940
  968. .word  49, 0   # the physical page number and the valid flag for virtual page 941
  969. .word  119, 0   # the physical page number and the valid flag for virtual page 942
  970. .word  114, 0   # the physical page number and the valid flag for virtual page 943
  971. .word  14, 0   # the physical page number and the valid flag for virtual page 944
  972. .word  69, 0   # the physical page number and the valid flag for virtual page 945
  973. .word  111, 0   # the physical page number and the valid flag for virtual page 946
  974. .word  50, 0   # the physical page number and the valid flag for virtual page 947
  975. .word  22, 0   # the physical page number and the valid flag for virtual page 948
  976. .word  15, 0   # the physical page number and the valid flag for virtual page 949
  977. .word  35, 0   # the physical page number and the valid flag for virtual page 950
  978. .word  25, 0   # the physical page number and the valid flag for virtual page 951
  979. .word  19, 0   # the physical page number and the valid flag for virtual page 952
  980. .word  66, 0   # the physical page number and the valid flag for virtual page 953
  981. .word  80, 0   # the physical page number and the valid flag for virtual page 954
  982. .word  3, 0   # the physical page number and the valid flag for virtual page 955
  983. .word  64, 0   # the physical page number and the valid flag for virtual page 956
  984. .word  56, 0   # the physical page number and the valid flag for virtual page 957
  985. .word  52, 0   # the physical page number and the valid flag for virtual page 958
  986. .word  72, 0   # the physical page number and the valid flag for virtual page 959
  987. .word  101, 0   # the physical page number and the valid flag for virtual page 960
  988. .word  44, 0   # the physical page number and the valid flag for virtual page 961
  989. .word  111, 0   # the physical page number and the valid flag for virtual page 962
  990. .word  17, 0   # the physical page number and the valid flag for virtual page 963
  991. .word  89, 0   # the physical page number and the valid flag for virtual page 964
  992. .word  41, 0   # the physical page number and the valid flag for virtual page 965
  993. .word  47, 0   # the physical page number and the valid flag for virtual page 966
  994. .word  106, 0   # the physical page number and the valid flag for virtual page 967
  995. .word  69, 0   # the physical page number and the valid flag for virtual page 968
  996. .word  66, 0   # the physical page number and the valid flag for virtual page 969
  997. .word  12, 0   # the physical page number and the valid flag for virtual page 970
  998. .word  24, 0   # the physical page number and the valid flag for virtual page 971
  999. .word  42, 0   # the physical page number and the valid flag for virtual page 972
  1000. .word  4, 0   # the physical page number and the valid flag for virtual page 973
  1001. .word  49, 0   # the physical page number and the valid flag for virtual page 974
  1002. .word  44, 0   # the physical page number and the valid flag for virtual page 975
  1003. .word  38, 0   # the physical page number and the valid flag for virtual page 976
  1004. .word  41, 0   # the physical page number and the valid flag for virtual page 977
  1005. .word  61, 0   # the physical page number and the valid flag for virtual page 978
  1006. .word  88, 0   # the physical page number and the valid flag for virtual page 979
  1007. .word  115, 0   # the physical page number and the valid flag for virtual page 980
  1008. .word  14, 0   # the physical page number and the valid flag for virtual page 981
  1009. .word  105, 0   # the physical page number and the valid flag for virtual page 982
  1010. .word  2, 0   # the physical page number and the valid flag for virtual page 983
  1011. .word  48, 0   # the physical page number and the valid flag for virtual page 984
  1012. .word  104, 0   # the physical page number and the valid flag for virtual page 985
  1013. .word  106, 0   # the physical page number and the valid flag for virtual page 986
  1014. .word  23, 0   # the physical page number and the valid flag for virtual page 987
  1015. .word  100, 0   # the physical page number and the valid flag for virtual page 988
  1016. .word  50, 0   # the physical page number and the valid flag for virtual page 989
  1017. .word  25, 0   # the physical page number and the valid flag for virtual page 990
  1018. .word  34, 0   # the physical page number and the valid flag for virtual page 991
  1019. .word  64, 0   # the physical page number and the valid flag for virtual page 992
  1020. .word  106, 0   # the physical page number and the valid flag for virtual page 993
  1021. .word  81, 0   # the physical page number and the valid flag for virtual page 994
  1022. .word  29, 0   # the physical page number and the valid flag for virtual page 995
  1023. .word  36, 0   # the physical page number and the valid flag for virtual page 996
  1024. .word  124, 0   # the physical page number and the valid flag for virtual page 997
  1025. .word  24, 0   # the physical page number and the valid flag for virtual page 998
  1026. .word  6, 0   # the physical page number and the valid flag for virtual page 999
  1027. .word  101, 0   # the physical page number and the valid flag for virtual page 1000
  1028. .word  127, 0   # the physical page number and the valid flag for virtual page 1001
  1029. .word  2, 0   # the physical page number and the valid flag for virtual page 1002
  1030. .word  54, 0   # the physical page number and the valid flag for virtual page 1003
  1031. .word  78, 0   # the physical page number and the valid flag for virtual page 1004
  1032. .word  31, 0   # the physical page number and the valid flag for virtual page 1005
  1033. .word  83, 0   # the physical page number and the valid flag for virtual page 1006
  1034. .word  111, 0   # the physical page number and the valid flag for virtual page 1007
  1035. .word  100, 0   # the physical page number and the valid flag for virtual page 1008
  1036. .word  90, 0   # the physical page number and the valid flag for virtual page 1009
  1037. .word  100, 0   # the physical page number and the valid flag for virtual page 1010
  1038. .word  52, 0   # the physical page number and the valid flag for virtual page 1011
  1039. .word  110, 0   # the physical page number and the valid flag for virtual page 1012
  1040. .word  112, 0   # the physical page number and the valid flag for virtual page 1013
  1041. .word  72, 0   # the physical page number and the valid flag for virtual page 1014
  1042. .word  93, 0   # the physical page number and the valid flag for virtual page 1015
  1043. .word  53, 0   # the physical page number and the valid flag for virtual page 1016
  1044. .word  20, 0   # the physical page number and the valid flag for virtual page 1017
  1045. .word  46, 0   # the physical page number and the valid flag for virtual page 1018
  1046. .word  106, 0   # the physical page number and the valid flag for virtual page 1019
  1047. .word  9, 0   # the physical page number and the valid flag for virtual page 1020
  1048. .word  104, 0   # the physical page number and the valid flag for virtual page 1021
  1049. .word  9, 0   # the physical page number and the valid flag for virtual page 1022
  1050. .word  24, 0   # the physical page number and the valid flag for virtual page 1023
  1051.  
  1052. #save userInput / segmented virtual memory address -- step 1
  1053. userInput: .word 0
  1054.  
  1055. #save segment number and seg offset -- step 1
  1056. segNum: .word 0
  1057.  
  1058. #load seg table Segment Limit -- step 2
  1059. segLim: .word 0 # holds selected segment limit
  1060.  
  1061. #load seg table Base Limits -- step 4
  1062. selSegBase: .word 0
  1063. segBase: .word 0
  1064.  
  1065. #calc seg offset address -- step 5
  1066. segOffsetAddr: .word 0
  1067.  
  1068. #calc linear virtual mem addr -- step 6
  1069. linVirtMemAddr: .word 0
  1070.  
  1071. #calc virt mem page nbr -- step 7
  1072.  
  1073. virtMemPageNbr: .word 0
  1074.  
  1075. #calc seg offset addr VMP -- step 8
  1076.  
  1077. offsetAddrVMP: .word 0
  1078.  
  1079. #calc physical memory page number -- step 10
  1080. physicalMemPageNbr: .word 0
  1081.  
  1082.  
  1083. ########################################################
  1084.  
  1085. #VMT SEARCH ###################
  1086. STR_MESSAGE0: .asciiz "\n"
  1087. STR_MESSAGE1: .asciiz "The given virtual memory page number: "
  1088. STR_MESSAGE2: .asciiz "The given virtual memory offset address: "
  1089. STR_MESSAGE3: .asciiz "Page Fault ...\n"
  1090.  
  1091. STR_MESSAGE4: .asciiz "Physical Page Number: "
  1092. STR_MESSAGE5: .asciiz "Physical Memory Offset Address: "
  1093. STR_MESSAGE6: .asciiz "Physical Memory Address: "
  1094. #VMT SEARCH ###################
  1095.  
  1096. STR_MESSAGE11: .asciiz "Enter a valid segmented-virtual memory address (0 - 33554431): "
  1097. STR_MESSAGE12: .asciiz "\n"
  1098. STR_MESSAGE13: .asciiz "Segment: "
  1099. STR_MESSAGE14: .asciiz "Entered Address: "
  1100. STR_MESSAGE16: .asciiz "The entered address exceeds 33554431. Enter a valid address.\n"
  1101. STR_MESSAGE17: .asciiz "The entered address is a negative address. Enter a valid address.\n"
  1102.  
  1103. # Seg fault error
  1104. STR_SEGFAULT: .asciiz "Segmentation Fault.\n"
  1105.  
  1106. # dedug message
  1107. STR_DEBUG: .asciiz "Debug.\n"
  1108.  
  1109. # dedug message
  1110. STR_DEBUG2: .asciiz "DebugCheckSegLim.\n"
  1111.  
  1112. # dedug message
  1113. STR_DEBUG3: .asciiz "LoadSegBase.\n"
  1114.  
  1115. # dedug message
  1116. STR_DEBUGLOOP1: .asciiz "LOOP1.\n"
  1117.  
  1118. .text
  1119. .globl main
  1120.  
  1121. # step 1
  1122. #Extract the first three bits in the segmented virtual memory address submitted by a user and translates the three digits to the segment
  1123. # #(an integer 0 through 7).
  1124. main:   la $s2, 0       # initialize $s2 register by 0
  1125.     la $s3, 0       # initialize $s3 register by 0
  1126.     li $s4, 33554431    # max. valid address
  1127.  
  1128.     # Prompt a segmented-virtual-memory address (0 - 33554431)
  1129.     li $v0, 4               # system call #4 (print a message)
  1130.     la $a0, STR_MESSAGE11    # load sddress of MESSAGE1
  1131.     syscall                 # Do it!
  1132.  
  1133.     li $v0, 5               # system call #5 (read an integer)
  1134.     syscall                 # Do it!
  1135.     move $s0, $v0       # copy the input integer to $s0
  1136.  
  1137.     li $v0, 4               # system call #4 (print a message)
  1138.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1139.     syscall                 # Do it!
  1140.  
  1141.     blt $s0, $s4, OK_MAX    # check if the entered address does
  1142.                 # not exceed 33554431
  1143.  
  1144.     li $v0, 4               # system call #4 (print a message)
  1145.     la $a0, STR_MESSAGE16    # load sddress of MESSAGE6
  1146.     syscall                 # Do it!
  1147.  
  1148.     j main
  1149.  
  1150.  
  1151. OK_MAX: bgt $s0, $zero, POSITIVE # check if the entered address is
  1152.                 # a positive value
  1153.  
  1154.     li $v0, 4               # system call #4 (print a message)
  1155.     la $a0, STR_MESSAGE17    # load sddress of MESSAGE7
  1156.     syscall                 # Do it!
  1157.  
  1158.     j main
  1159.  
  1160. POSITIVE:
  1161.     li $v0, 4               # system call #4 (print a message)
  1162.     la $a0, STR_MESSAGE14    # load sddress of MESSAGE4
  1163.     syscall                 # Do it!
  1164.  
  1165.     li $v0, 1               # system call #1 (print an integer)
  1166.     move $a0, $s0       # copy $s0 to $a0
  1167.     syscall                 # Do it!
  1168.  
  1169.     li $v0, 4               # system call #4 (print a message)
  1170.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1171.     syscall                 # Do it!
  1172.  
  1173.     li $v0, 4               # system call #4 (print a message)
  1174.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1175.     syscall                 # Do it!
  1176.  
  1177. # Extract the segment number (extract the first 3 bits in the 25 bits) for the segment #
  1178.  
  1179.     and $s1, $s0, 0x01000000 # check if the 25th bit is one or zero
  1180.     beq $s1, $zero, NO_25BIT
  1181.  
  1182.     la  $s2, 4
  1183.  
  1184. NO_25BIT:
  1185.  
  1186.     and $s1, $s0, 0x00800000 # check if the 24th bit is one or zero
  1187.     beq $s1, $zero, NO_24BIT
  1188.  
  1189.     addu  $s2, 2
  1190.  
  1191. NO_24BIT:
  1192.  
  1193.     and $s1, $s0, 0x00400000 # check if the 23rd bit is one or zero
  1194.     beq $s1, $zero, NO_23BIT
  1195.  
  1196.     addu  $s2, 1
  1197.  
  1198. NO_23BIT:
  1199.  
  1200.     li $v0, 4               # system call #4 (print message)
  1201.     la $a0, STR_MESSAGE13    # load sddress of MESSAGE3
  1202.     syscall                 # Do it!
  1203.  
  1204.     li $v0, 1               # system call #1 (print an integer)
  1205.     move $a0, $s2       # copy $s2 to $a0
  1206.     syscall                 # Do it!
  1207.  
  1208.     li $v0, 4               # system call #4 (print message)
  1209.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1210.     syscall                 # Do it!
  1211.  
  1212.     sw $s2, segNum          # save result for seg numbr $s2
  1213.     sw $s0, userInput       # save user input into variable
  1214.  
  1215.  
  1216. # step 2
  1217. #Find the “(segment) limit” for the segment identified in Step #1 (using the segmentation table).
  1218. LoadSegLimits:
  1219.     lui $s0, 0x1001           #$s3 == array
  1220.    
  1221.     #branch switch
  1222.     beq $s2, 0, Lim0
  1223.     beq $s2, 1, Lim1
  1224.     beq $s2, 2, Lim2
  1225.     beq $s2, 3, Lim3
  1226.     beq $s2, 4, Lim4
  1227.     beq $s2, 5, Lim5
  1228.     beq $s2, 6, Lim6
  1229.     beq $s2, 7, Lim7
  1230.    
  1231. Lim0:
  1232.     lw $s1, 4($s0)      # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1233.     sw $s1, segLim         # load array index 1 into variable for segLim
  1234.  
  1235.     #debug
  1236.     li  $v0, 1          # load appropriate system call code into register $v0;
  1237.                     # code for printing integer is 1
  1238.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1239.     syscall
  1240.    
  1241.     li $v0, 4               # system call #4 (print a message)
  1242.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1243.     syscall                 # Do it!
  1244.    
  1245.     j step3
  1246.    
  1247. Lim1:
  1248.     lw $s1, 12($s0)         # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1249.     sw $s1, segLim         # load array index 1 into variable for segLim
  1250.  
  1251.     #debug
  1252.     li  $v0, 1          # load appropriate system call code into register $v0;
  1253.                     # code for printing integer is 1
  1254.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1255.     syscall
  1256.  
  1257.     li $v0, 4               # system call #4 (print a message)
  1258.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1259.     syscall                 # Do it!
  1260.    
  1261.     j step3
  1262.    
  1263. Lim2:
  1264.     lw $s1, 20($s0)         # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1265.     sw $s1, segLim         # load array index 1 into variable for segLim
  1266.  
  1267.     #debug
  1268.     li  $v0, 1          # load appropriate system call code into register $v0;
  1269.                     # code for printing integer is 1
  1270.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1271.     syscall
  1272.  
  1273.     li $v0, 4               # system call #4 (print a message)
  1274.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1275.     syscall                 # Do it!
  1276.    
  1277.     j step3
  1278.  
  1279. Lim3:
  1280.     lw $s1, 28($s0)         # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1281.     sw $s1, segLim         # load array index 1 into variable for segLim
  1282.  
  1283.     #debug
  1284.     li  $v0, 1          # load appropriate system call code into register $v0;
  1285.                     # code for printing integer is 1
  1286.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1287.     syscall
  1288.  
  1289.     li $v0, 4               # system call #4 (print a message)
  1290.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1291.     syscall                 # Do it!
  1292.    
  1293.     j step3
  1294.    
  1295. Lim4:
  1296.     lw $s1, 36($s0)         # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1297.     sw $s1, segLim         # load array index 1 into variable for segLim
  1298.  
  1299.     #debug
  1300.     li  $v0, 1          # load appropriate system call code into register $v0;
  1301.                     # code for printing integer is 1
  1302.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1303.     syscall
  1304.  
  1305.     li $v0, 4               # system call #4 (print a message)
  1306.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1307.     syscall                 # Do it!
  1308.    
  1309.     j step3
  1310.  
  1311. Lim5:
  1312.     lw $s1, 44($s0)         # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1313.     sw $s1, segLim         # load array index 1 into variable for segLim
  1314.  
  1315.     #debug
  1316.     li  $v0, 1          # load appropriate system call code into register $v0;
  1317.                     # code for printing integer is 1
  1318.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1319.     syscall
  1320.  
  1321.     li $v0, 4               # system call #4 (print a message)
  1322.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1323.     syscall                 # Do it!
  1324.    
  1325.     j step3
  1326.  
  1327. Lim6:
  1328.     lw $s1, 52($s0)         # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1329.     sw $s1, segLim         # load array index 1 into variable for segLim
  1330.  
  1331.     #debug
  1332.     li  $v0, 1          # load appropriate system call code into register $v0;
  1333.                     # code for printing integer is 1
  1334.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1335.     syscall
  1336.  
  1337.     li $v0, 4               # system call #4 (print a message)
  1338.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1339.     syscall                 # Do it!
  1340.    
  1341.     j step3
  1342.  
  1343. Lim7:
  1344.     lw $s1, 60($s0)         # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1345.     sw $s1, segLim         # load array index 1 into variable for segLim
  1346.  
  1347.     #debug
  1348.     li  $v0, 1          # load appropriate system call code into register $v0;
  1349.                     # code for printing integer is 1
  1350.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1351.     syscall
  1352.  
  1353.     li $v0, 4               # system call #4 (print a message)
  1354.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1355.     syscall                 # Do it!
  1356.    
  1357.     j step3
  1358.  
  1359.  
  1360. # step 3
  1361. #Test against segmentation fault.  If segmentation fault occurs, terminate the program with the error message.  
  1362. # Otherwise, proceed to Step #4.
  1363.  
  1364. step3:
  1365. #$s0 = segNum
  1366. #$s1 = userInput
  1367. #$s3 = segLimit
  1368.  
  1369.     li $v0, 4               # system call #4 (print a message)
  1370.     la $a0, STR_DEBUG    # load sddress of MESSAGE2 (new line)
  1371.     syscall                 # Do it!
  1372.    
  1373.     li $v0, 4               # system call #4 (print a message)
  1374.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1375.     syscall                 # Do it!
  1376.  
  1377. segTest:
  1378.  
  1379.     #clear $s registers
  1380.     li $s0, 0
  1381.     li $s1, 0
  1382.     li $s2, 0
  1383.     li $s3, 0
  1384.     li $s4, 0
  1385.     li $s5, 0
  1386.     li $s6, 0
  1387.     li $s7, 0
  1388.  
  1389.     # load seg numbr and user input
  1390.     lw $s0, segNum                  # load segNum
  1391.     lw $s1, userInput               # load userInput
  1392.  
  1393.     #load segLimit
  1394.     lw $s3, segLim
  1395.    
  1396.     #debug -- seg virt mem addr
  1397.     li  $v0, 1          # load appropriate system call code into register $v0;
  1398.                         # code for printing integer is 1
  1399.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1400.     syscall
  1401.    
  1402.     li $v0, 4               # system call #4 (print a message)
  1403.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1404.     syscall    
  1405.  
  1406. #debug -- seg limit
  1407.     li  $v0, 1          # load appropriate system call code into register $v0;
  1408.                     # code for printing integer is 1
  1409.     move    $a0, $s3        # move integer to be printed into $a0:  $a0 = $t2
  1410.     syscall
  1411.    
  1412.     li $v0, 4               # system call #4 (print a message)
  1413.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1414.     syscall            
  1415.    
  1416.  
  1417. checkSegLim:
  1418.     bgt $s1, $s3, segFault          # segFault if userInput > segLim
  1419.    
  1420.     li $v0, 4               # system call #4 (print a message)
  1421.     la $a0, STR_DEBUG2    # load sddress of MESSAGE2 (new line)
  1422.     syscall                 # Do it!
  1423.    
  1424.     li $v0, 4               # system call #4 (print a message)
  1425.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1426.     syscall                 # Do it!
  1427.    
  1428.     j step4                         # jump to step 4 if no seg fault
  1429.  
  1430.  
  1431. segFault:
  1432.     li $v0, 4                       # system call #4 (print a message)
  1433.     la $a0, STR_SEGFAULT            # load sddress of MESSAGE4
  1434.     syscall                         # Do it!
  1435.  
  1436.  
  1437. # step 4
  1438. #Find the “base address” of the segment identified in Step #1 (using the segmentation table).
  1439. step4: #load base limit from seg table
  1440.  
  1441.     #clear $s registers
  1442.     li $s0, 0
  1443.     li $s1, 0
  1444.     li $s2, 0
  1445.     li $s3, 0
  1446.     li $s4, 0
  1447.     li $s5, 0
  1448.     li $s6, 0
  1449.     li $s7, 0
  1450.    
  1451.  
  1452.     li $v0, 4               # system call #4 (print a message)
  1453.     la $a0, STR_DEBUG3    # load sddress of MESSAGE2 (new line)
  1454.     syscall                 # Do it!
  1455.    
  1456.     li $v0, 4               # system call #4 (print a message)
  1457.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1458.     syscall                 # Do it!
  1459.  
  1460.  
  1461. LoadBaseSLimits:
  1462.     lui $s0, 0x1001           #$s3 == array
  1463.    
  1464.     # load seg numbr and user input
  1465.     lw $s2, segNum                  # load segNum
  1466.     lw $s3, userInput               # load userInput
  1467.    
  1468.    
  1469.     #branch switch
  1470.     beq $s2, 0, Base0
  1471.     beq $s2, 1, Base1
  1472.     beq $s2, 2, Base2
  1473.     beq $s2, 3, Base3
  1474.     beq $s2, 4, Base4
  1475.     beq $s2, 5, Base5
  1476.     beq $s2, 6, Base6
  1477.     beq $s2, 7, Base7
  1478.    
  1479. Base0:
  1480.     lw $s1, 0($s0)      # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1481.     sw $s1, segBase         # load array index 1 into variable for segLim
  1482.  
  1483.     #debug
  1484.     li  $v0, 1          # load appropriate system call code into register $v0;
  1485.                     # code for printing integer is 1
  1486.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1487.     syscall
  1488.    
  1489.     li $v0, 4               # system call #4 (print a message)
  1490.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1491.     syscall                 # Do it!
  1492.    
  1493.  
  1494.    
  1495.     j step5
  1496.  
  1497. Base1:
  1498.     lw $s1, 8($s0)      # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1499.     sw $s1, segBase         # load array index 1 into variable for segLim
  1500.  
  1501.     #debug
  1502.     li  $v0, 1          # load appropriate system call code into register $v0;
  1503.                     # code for printing integer is 1
  1504.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1505.     syscall
  1506.  
  1507.     li $v0, 4               # system call #4 (print a message)
  1508.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1509.     syscall                 # Do it!
  1510.    
  1511.     j step5
  1512.    
  1513. Base2:
  1514.     lw $s1, 16($s0)         # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1515.     sw $s1, segBase         # load array index 1 into variable for segLim
  1516.  
  1517.     #debug
  1518.     li  $v0, 1          # load appropriate system call code into register $v0;
  1519.                     # code for printing integer is 1
  1520.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1521.     syscall
  1522.  
  1523.     li $v0, 4               # system call #4 (print a message)
  1524.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1525.     syscall                 # Do it!
  1526.    
  1527.     j step5
  1528.  
  1529. Base3:
  1530.     lw $s1, 24($s0)         # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1531.     sw $s1, segBase         # load array index 1 into variable for segLim
  1532.  
  1533.     #debug
  1534.     li  $v0, 1          # load appropriate system call code into register $v0;
  1535.                     # code for printing integer is 1
  1536.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1537.     syscall
  1538.  
  1539.     li $v0, 4               # system call #4 (print a message)
  1540.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1541.     syscall                 # Do it!
  1542.    
  1543.     j step5
  1544.    
  1545. Base4:
  1546.     lw $s1, 32($s0)         # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1547.     sw $s1, segBase         # load array index 1 into variable for segLim
  1548.  
  1549.     #debug
  1550.     li  $v0, 1          # load appropriate system call code into register $v0;
  1551.                     # code for printing integer is 1
  1552.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1553.     syscall
  1554.  
  1555.     li $v0, 4               # system call #4 (print a message)
  1556.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1557.     syscall                 # Do it!
  1558.    
  1559.     j step5
  1560.  
  1561. Base5:
  1562.     lw $s1, 40($s0)         # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1563.     sw $s1, segBase         # load array index 1 into variable for segLim
  1564.  
  1565.     #debug
  1566.     li  $v0, 1          # load appropriate system call code into register $v0;
  1567.                     # code for printing integer is 1
  1568.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1569.     syscall
  1570.  
  1571.     li $v0, 4               # system call #4 (print a message)
  1572.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1573.     syscall                 # Do it!
  1574.    
  1575.     j step5
  1576.  
  1577. Base6:
  1578.     lw $s1, 48($s0)         # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1579.     sw $s1, segBase         # load array index 1 into variable for segLim
  1580.  
  1581.     #debug
  1582.     li  $v0, 1          # load appropriate system call code into register $v0;
  1583.                     # code for printing integer is 1
  1584.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1585.     syscall
  1586.  
  1587.     li $v0, 4               # system call #4 (print a message)
  1588.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1589.     syscall                 # Do it!
  1590.    
  1591.     j step5
  1592.  
  1593. Base7:
  1594.     lw $s1, 56($s0)         # 0 - 1st array for segLim0 -- every other incr of 4 [add 8]
  1595.     sw $s1, segBase         # load array index 1 into variable for segLim
  1596.  
  1597.     #debug
  1598.     li  $v0, 1          # load appropriate system call code into register $v0;
  1599.                     # code for printing integer is 1
  1600.     move    $a0, $s1        # move integer to be printed into $a0:  $a0 = $t2
  1601.     syscall
  1602.  
  1603.     li $v0, 4               # system call #4 (print a message)
  1604.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1605.     syscall                 # Do it!
  1606.    
  1607.     j step5
  1608.  
  1609. #step 5
  1610. #Extract the lower 22 bits (22 LSB bits) in the segmented virtual memory address.
  1611. # / Calculate segment offset address
  1612. step5:
  1613.  
  1614.     #clear $s registers
  1615.     li $s0, 0
  1616.     li $s1, 0
  1617.     li $s2, 0
  1618.     li $s3, 0
  1619.     li $s4, 0
  1620.     li $s5, 0
  1621.     li $s6, 0
  1622.     li $s7, 0
  1623.  
  1624.     # load segment virtual memory address
  1625.     lw $s1, userInput
  1626.    
  1627.     la $s0, 0x03FFFFF   # set the mask pattern to $v0 register
  1628.     and $s2, $s1, $s0   # set “0” for the first six bits ($v2 register gets the offset address)
  1629.     sw $s2, segOffsetAddr
  1630.  
  1631.     #print output
  1632.     li  $v0, 2          # load appropriate system call code into register $v0;
  1633.                     # code for printing integer is 1
  1634.     move    $a0, $s2        # move integer to be printed into $a0:  $a0 = $t2
  1635.     syscall
  1636.  
  1637.     li $v0, 4               # system call #4 (print a message)
  1638.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1639.     syscall                 # Do it!
  1640.  
  1641. #step 6 -- calculate linear virtual memory address
  1642. #Add the segment offset address (extracted in Step #5) to the base address of the segment (extracted in Step #4).  
  1643. # This becomes the linear virtual memory address.
  1644. Step6:
  1645.  
  1646.     #clear $s registers
  1647.     li $s0, 0
  1648.     li $s1, 0
  1649.     li $s2, 0
  1650.     li $s3, 0
  1651.     li $s4, 0
  1652.     li $s5, 0
  1653.     li $s6, 0
  1654.     li $s7, 0
  1655.    
  1656.     lw $s0, segBase     # load seg base (step 4)
  1657.     lw $s1, segOffsetAddr   # load seg offset address (step 5)
  1658.    
  1659.     add $s2, $s1, $s2
  1660.    
  1661.     sw $s2, linVirtMemAddr  # save linear virtual memory address in variable
  1662.    
  1663.     #print output
  1664.     li  $v0, 2          # load appropriate system call code into register $v0;
  1665.                     # code for printing integer is 1
  1666.     move    $a0, $s2        # move integer to be printed into $a0:  $a0 = $t2
  1667.     syscall
  1668.  
  1669.     li $v0, 4               # system call #4 (print a message)
  1670.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1671.     syscall                 # Do it!
  1672.    
  1673. #step7 -- Calculate virtual memory page number
  1674. #Calculate the “virtual memory page number” for “the (liner) virtual memory address” you calculated in Step #6.
  1675. step7:
  1676.     #clear $s registers
  1677.     li $s0, 0
  1678.     li $s1, 0
  1679.     li $s2, 0
  1680.     li $s3, 0
  1681.     li $s4, 0
  1682.     li $s5, 0
  1683.     li $s6, 0
  1684.     li $s7, 0
  1685.    
  1686.     lw $s0, userInput
  1687.     lui $s1, 32768
  1688.    
  1689.     divu  $s2, $s0, $s1 # $s2 = $s0/$s1
  1690.     sw $s2, virtMemPageNbr
  1691.    
  1692.     #print output
  1693.     li  $v0, 2          # load appropriate system call code into register $v0;
  1694.                     # code for printing integer is 1
  1695.     move    $a0, $s2        # move integer to be printed into $a0:  $a0 = $t2
  1696.     syscall
  1697.  
  1698.     li $v0, 4               # system call #4 (print a message)
  1699.     la $a0, STR_MESSAGE12    # load sddress of MESSAGE2 (new line)
  1700.     syscall                 # Do it!
  1701.    
  1702. #step 8 -- calculate offset address in the virtual memory page
  1703. #Calculate the offset address in the virtual memory page you calculated in Step #7.
  1704. step8:
  1705.     #clear $s registers
  1706.     li $s0, 0
  1707.     li $s1, 0
  1708.     li $s2, 0
  1709.     li $s3, 0
  1710.     li $s4, 0
  1711.     li $s5, 0
  1712.     li $s6, 0
  1713.     li $s7, 0
  1714.  
  1715.     li $s7, 32768
  1716.  
  1717.     lw $s0, userInput   # load segmented virtual memory address
  1718.     lw $s1, virtMemPageNbr  # load virtual memory page number
  1719.  
  1720.     subu $s2, $s0, $s1  # subtract seg virt mem addr - virt mem page nbr
  1721.     mul $s3, $s2, $s7   # calculate offset addr
  1722.     sw $s3, offsetAddrVMP   # save offset in virtual memory page as variable
  1723.     #move $s3, $v0      # move for debug print
  1724.  
  1725.     #debug
  1726.     li $v0, 1       # load appropriate system call code into register $v0;
  1727.                 # code for printing integer is 1
  1728.     move $a0, $s3       # move integer to be printed into $a0:  $a0 = $t2
  1729.     syscall
  1730.  
  1731.     li $v0, 4               # system call #4 (print a message)
  1732.     la $a0, STR_MESSAGE12   # load sddress of MESSAGE2 (new line)
  1733.     syscall                 # Do it!
  1734.  
  1735. #step 9 VMT
  1736. #Search the VMT for the virtual memory page you calculated in Step #7.
  1737. step9:
  1738.  
  1739.     #clear $s registers
  1740.     li $s0, 0
  1741.     li $s1, 0
  1742.     li $s2, 0
  1743.     li $s3, 0
  1744.     li $s4, 0
  1745.     li $s5, 0
  1746.     li $s6, 0
  1747.     li $s7, 0
  1748.  
  1749.     la $s4, linVirtMemAddr      # $s4 register -> page size (in bytes)
  1750.     la $s5, virtMemPageNbr      # $s5 register -> virtual page number
  1751.     la $s6, offsetAddrVMP       # $s6 register -> page offset address
  1752.  
  1753.     la $s0, 0       # #s0 register for the physical memory address
  1754.     la $s1, 0       # $s1 register for the physical memory page number
  1755.  
  1756.     la $s7, VMT     # $s7 register points to the first element
  1757.                 # in the VMT
  1758.  
  1759.     # show the given virtual memory page number ---------------------------------
  1760.     li $v0, 4               # system call #4 (print a message)
  1761.     la $a0, STR_MESSAGE1    # load sddress of MESSAGE1
  1762.     syscall                 # Do it!
  1763.  
  1764.     li $v0, 1               # system call #1 (print an integer)
  1765.     move $a0, $s5       # set the given segment number
  1766.     syscall                 # Do it!
  1767.  
  1768.     li $v0, 4               # system call #4 (print a message)
  1769.     la $a0, STR_MESSAGE0    # load sddress of MESSAGE0 (new line)
  1770.     syscall                 # Do it!
  1771.  
  1772.     # show the given virtual memory offset address ------------------------------
  1773.     li $v0, 4               # system call #4 (print a message)
  1774.     la $a0, STR_MESSAGE2    # load sddress of MESSAGE2
  1775.     syscall                 # Do it!
  1776.  
  1777.     li $v0, 1               # system call #1 (print an integer)
  1778.     move $a0, $s6       # set the given offset address
  1779.     syscall                 # Do it!
  1780.  
  1781.     li $v0, 4               # system call #4 (print a message)
  1782.     la $a0, STR_MESSAGE0    # load sddress of MESSAGE0 (new line)
  1783.     syscall                 # Do it!
  1784.  
  1785.     li $v0, 4               # system call #4 (print a message)
  1786.     la $a0, STR_MESSAGE0    # load sddress of MESSAGE0 (new line)
  1787.     syscall                 # Do it!
  1788.  
  1789.  
  1790.     move $t0, $s5       # set $t0 as a loop counter
  1791. LOOP1:  beqz $t0, EXIT1     # if no need to go lower in the table, EXIT1 ####INF LOOP -- bad input from prev step???? $t0 and $s7 issues
  1792.     add $s7, $s7, 8     # skip to the next virtual page in VMT
  1793.     subu $t0, $t0, 1    # Decrease the loop counter
  1794.    
  1795.     li $v0, 4               # system call #4 (print a message)
  1796.     la $a0, STR_DEBUGLOOP1    # load sddress of MESSAGE2 (new line)
  1797.     syscall          
  1798.  
  1799.     j LOOP1
  1800.  
  1801. EXIT1:  lw $t1, ($s7)       # Load the [hysical memory page number
  1802.     lw $t2, 4($s7)      # Load the valid flag
  1803.  
  1804.     move $s1, $t1       # copy the the physical memory page number to $s1 register
  1805.  
  1806.     move $t0, $s1       # set $t0 as a loop counter
  1807. LOOP2:  beqz $t0, EXIT2     # if no need to go lower in the table (page 0), EXIT2
  1808.     add $s0, $s0, $s4   # add the page size (in $s4 register)
  1809.     subu $t0, $t0, 1    # Decrease the loop counter
  1810.  
  1811.     j LOOP2
  1812.  
  1813. EXIT2:  add $s0, $s0, $s6   # calculate the physical memory address
  1814.  
  1815.     # show the physical memory page number --(STEP 10)------------------------------------
  1816.     li $v0, 4               # system call #4 (print a message)
  1817.     la $a0, STR_MESSAGE4    # load sddress of MESSAGE4
  1818.     syscall                 # Do it!
  1819.  
  1820.     li $v0, 1               # system call #1 (print an integer)
  1821.     move $a0, $s1       # set the given segment number
  1822.     syscall                 # Do it!
  1823.    
  1824.     sw $s1, physicalMemPageNbr  # save physical memory page number
  1825.  
  1826.     li $v0, 4               # system call #4 (print a message)
  1827.     la $a0, STR_MESSAGE0    # load sddress of MESSAGE0 (new line)
  1828.     syscall                 # Do it!
  1829.  
  1830.     # show the physical memory address ------------------------------------------
  1831.     li $v0, 4               # system call #4 (print a message)
  1832.     la $a0, STR_MESSAGE6    # load sddress of MESSAGE6
  1833.     syscall                 # Do it!
  1834.  
  1835.     li $v0, 1               # system call #1 (print an integer)
  1836.     move $a0, $s0       # set the given segment number
  1837.     syscall                 # Do it!
  1838.  
  1839.     li $v0, 4               # system call #4 (print a message)
  1840.     la $a0, STR_MESSAGE0    # load sddress of MESSAGE0 (new line)
  1841.     syscall                 # Do it!
  1842.    
  1843. #step 11 - Calculate final physical memory address
  1844. #(the physical memory page number) x 32KB + (page offset address)
  1845. step11:
  1846.    
  1847.     #clear $s registers
  1848.     li $s0, 0
  1849.     li $s1, 0
  1850.     li $s2, 0
  1851.     li $s3, 0
  1852.     li $s4, 0
  1853.     li $s5, 0
  1854.     li $s6, 0
  1855.     li $s7, 0
  1856.    
  1857.     lw $s0, physicalMemPageNbr  #load physical memory page number (step 10)
  1858.     lw $s1, offsetAddrVMP       #load page offset address (step 8)
  1859.    
  1860.     li $s7, 32768               #32KB
  1861.    
  1862.     mul $s2, $s0, $s7           #the physical memory page number) x 32KB
  1863.     addu $s3, $s2, $s1          # + page offset address
  1864.    
  1865.     #debug
  1866.     li $v0, 1       # load appropriate system call code into register $v0;
  1867.                 # code for printing integer is 1
  1868.     move $a0, $s3       # move integer to be printed into $a0:  $a0 = $t2
  1869.     syscall
  1870.  
  1871.     li $v0, 4               # system call #4 (print a message)
  1872.     la $a0, STR_MESSAGE12   # load sddress of MESSAGE2 (new line)
  1873.     syscall              
  1874.    
  1875.    
  1876. ENDING: jr $31          # stop the program
  1877.  
  1878. ## END OF LINES #################################################
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement