update
This commit is contained in:
parent
23a079c89a
commit
cac30ebbb1
9
q2/algo/tp8/AdditiveArrayList.java
Normal file
9
q2/algo/tp8/AdditiveArrayList.java
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
import java.util.Arrays;
|
||||||
|
|
||||||
|
public class AdditiveArrayList<T> extends MyArrayList<T>{
|
||||||
|
public void makeSpaceIfNeeded(){
|
||||||
|
if(T1.length == size){
|
||||||
|
T[] temp = Arrays.newInstance(size-1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
54
q2/algo/tp8/ArrayListTest.java
Normal file
54
q2/algo/tp8/ArrayListTest.java
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Random;
|
||||||
|
|
||||||
|
public class ArrayListTest {
|
||||||
|
|
||||||
|
public static ArrayList<String> create(int n){
|
||||||
|
ArrayList<String> ret = new ArrayList<String>();
|
||||||
|
for (;n > 0 ; n--) {
|
||||||
|
String random_Word = "";
|
||||||
|
Random rand = new Random();
|
||||||
|
int str_size = rand.nextInt(1, 50);
|
||||||
|
for(int i =0; i < str_size; i++){
|
||||||
|
random_Word += (char) rand.nextInt(32, 126);
|
||||||
|
}
|
||||||
|
ret.add(random_Word);
|
||||||
|
}
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void add(ArrayList<String> l, String s){
|
||||||
|
l.add(s);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void empty(ArrayList<String> l){
|
||||||
|
l.clear();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void display(ArrayList<String> l){
|
||||||
|
System.out.print("[");
|
||||||
|
for (String e : l) {
|
||||||
|
System.out.print(e);
|
||||||
|
System.out.print(", ");
|
||||||
|
}
|
||||||
|
System.out.println("]");
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
ArrayList<String> a;
|
||||||
|
|
||||||
|
a = create(5);
|
||||||
|
display(a);
|
||||||
|
|
||||||
|
add(a, "The lazy brown fox jump over the lazy fence");
|
||||||
|
display(a);
|
||||||
|
|
||||||
|
empty(a);
|
||||||
|
display(a);
|
||||||
|
|
||||||
|
add(a, "The lazy brown fox jump over the lazy fence");
|
||||||
|
display(a);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
35
q2/algo/tp8/MyArrayList.java
Normal file
35
q2/algo/tp8/MyArrayList.java
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
import java.util.Arrays;
|
||||||
|
|
||||||
|
public abstract class MyArrayList<T> {
|
||||||
|
protected T T1[], temp[];
|
||||||
|
protected int size;
|
||||||
|
|
||||||
|
public int size(){
|
||||||
|
return size;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int physicalSize(){
|
||||||
|
return T1.length + temp.length + size * Integer.SIZE;
|
||||||
|
}
|
||||||
|
|
||||||
|
public T get(int i){
|
||||||
|
return T1[i];
|
||||||
|
}
|
||||||
|
|
||||||
|
public void add(T o){
|
||||||
|
makeSpaceIfNeeded();
|
||||||
|
T1[size++] = o;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void add(int i, T o){
|
||||||
|
makeSpaceIfNeeded();
|
||||||
|
temp = Arrays.copyOfRange(T1, i, size-1);
|
||||||
|
T1[i] = o;
|
||||||
|
for(int j = 1; j <= temp.length; j++){
|
||||||
|
T1[j + i] = temp[i];
|
||||||
|
}
|
||||||
|
size++;
|
||||||
|
}
|
||||||
|
|
||||||
|
abstract void makeSpaceIfNeeded();
|
||||||
|
}
|
BIN
q2/fonctio/tp2/MIPS_Green_Sheet.pdf
Normal file
BIN
q2/fonctio/tp2/MIPS_Green_Sheet.pdf
Normal file
Binary file not shown.
BIN
q2/fonctio/tp2/fonct-ordis-tp2-spim.pdf
Normal file
BIN
q2/fonctio/tp2/fonct-ordis-tp2-spim.pdf
Normal file
Binary file not shown.
32
q2/fonctio/tp2/spim-add-int.s
Normal file
32
q2/fonctio/tp2/spim-add-int.s
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
.data
|
||||||
|
txt1: .asciiz "Entrez un premier nombre:"
|
||||||
|
txt2: .asciiz "Entrez un second nombre:"
|
||||||
|
|
||||||
|
.text
|
||||||
|
main:
|
||||||
|
# print txt1
|
||||||
|
la $a0, txt1
|
||||||
|
li $v0, 4
|
||||||
|
syscall
|
||||||
|
|
||||||
|
#read t0
|
||||||
|
li $v0, 5
|
||||||
|
syscall
|
||||||
|
move $t0, $v0
|
||||||
|
|
||||||
|
# print txt2
|
||||||
|
li $v0, 4
|
||||||
|
la $a0, txt2
|
||||||
|
syscall
|
||||||
|
|
||||||
|
#read t1
|
||||||
|
li $v0, 5
|
||||||
|
syscall
|
||||||
|
move $t1, $v0
|
||||||
|
|
||||||
|
# a0 = t0 + t1
|
||||||
|
add $a0, $t1, $t0
|
||||||
|
|
||||||
|
li $v0, 1
|
||||||
|
syscall
|
||||||
|
jr $ra
|
12
q2/fonctio/tp2/spim-loop-5-write.s
Normal file
12
q2/fonctio/tp2/spim-loop-5-write.s
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
main:
|
||||||
|
li $a0, 5
|
||||||
|
li $a1, 0
|
||||||
|
li $v0, 1
|
||||||
|
j loop
|
||||||
|
|
||||||
|
loop:
|
||||||
|
syscall
|
||||||
|
addiu $a0, -1
|
||||||
|
bne $a0, $a1, loop
|
||||||
|
# bgtz $a0, loop
|
||||||
|
jr $ra
|
10
q2/fonctio/tp2/spim-loop-5.s
Normal file
10
q2/fonctio/tp2/spim-loop-5.s
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
main:
|
||||||
|
li $a0, 5
|
||||||
|
li $a1, 0
|
||||||
|
j loop
|
||||||
|
|
||||||
|
loop:
|
||||||
|
addiu $a0, -1
|
||||||
|
bne $a0, $a1, loop
|
||||||
|
# bgtz $a0, loop
|
||||||
|
jr $ra
|
3
q2/fonctio/tp2/spim-loop.s
Normal file
3
q2/fonctio/tp2/spim-loop.s
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
main:
|
||||||
|
nop
|
||||||
|
j main
|
9
q2/fonctio/tp2/spim-print-str.s
Normal file
9
q2/fonctio/tp2/spim-print-str.s
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
.data
|
||||||
|
mystr: .asciiz "The answer to live, universe and everything else is.... 42"
|
||||||
|
|
||||||
|
.text
|
||||||
|
main:
|
||||||
|
la $a0, mystr
|
||||||
|
li $v0, 4
|
||||||
|
syscall
|
||||||
|
jr $ra
|
33
q2/fonctio/tp2/spim-read-int.s
Normal file
33
q2/fonctio/tp2/spim-read-int.s
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
.data
|
||||||
|
question: .asciiz "Entrez un nombre: "
|
||||||
|
gr: .asciiz "Trop Grand!\n"
|
||||||
|
pe: .asciiz "Valeur acceptee\n"
|
||||||
|
|
||||||
|
.text
|
||||||
|
main:
|
||||||
|
la $a0, question
|
||||||
|
li $v0, 4
|
||||||
|
syscall
|
||||||
|
|
||||||
|
li $v0, 5
|
||||||
|
syscall
|
||||||
|
|
||||||
|
bgt $v0, 10, grand
|
||||||
|
bgt $v0, 0, petit
|
||||||
|
jr $ra
|
||||||
|
|
||||||
|
grand:
|
||||||
|
la $a0, gr
|
||||||
|
li $v0, 4
|
||||||
|
syscall
|
||||||
|
j main
|
||||||
|
|
||||||
|
petit:
|
||||||
|
la $a0, pe
|
||||||
|
li $v0, 4
|
||||||
|
syscall
|
||||||
|
|
||||||
|
lr $a0,
|
||||||
|
li $v0, 4
|
||||||
|
syscall
|
||||||
|
j main
|
27
q2/fonctio/tp2/spim-to-binary.s
Normal file
27
q2/fonctio/tp2/spim-to-binary.s
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
.data
|
||||||
|
ask: .ascii "Entrez un nombre:"
|
||||||
|
|
||||||
|
.text
|
||||||
|
main:
|
||||||
|
|
||||||
|
# Print(ask)
|
||||||
|
li $v0 4
|
||||||
|
la $a0 ask
|
||||||
|
syscall
|
||||||
|
|
||||||
|
# read()
|
||||||
|
li $v0 5
|
||||||
|
syscall
|
||||||
|
|
||||||
|
li $t0 2 #base
|
||||||
|
|
||||||
|
divi:
|
||||||
|
|
||||||
|
div $v0, $t0
|
||||||
|
li $v0, 1
|
||||||
|
mfhi $a0
|
||||||
|
syscall
|
||||||
|
mflo $v0
|
||||||
|
bne $v0, 0, divi
|
||||||
|
|
||||||
|
jr $ra
|
29
q2/fonctio/tp2/switch-table.s
Normal file
29
q2/fonctio/tp2/switch-table.s
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
.data
|
||||||
|
tab: .word case5, case6, case7, case8
|
||||||
|
q1: .asciiz "Entrez un nombre entre 5 et 8:"
|
||||||
|
|
||||||
|
.text
|
||||||
|
main:
|
||||||
|
li $v0, 5
|
||||||
|
la $a0, q1
|
||||||
|
syscall
|
||||||
|
|
||||||
|
li $v0, 4
|
||||||
|
syscall
|
||||||
|
|
||||||
|
|
||||||
|
case5:
|
||||||
|
|
||||||
|
j end_case
|
||||||
|
case6:
|
||||||
|
|
||||||
|
j end_case
|
||||||
|
case7:
|
||||||
|
|
||||||
|
j end_case
|
||||||
|
case8:
|
||||||
|
|
||||||
|
j end_case
|
||||||
|
|
||||||
|
end_case:
|
||||||
|
jr $ra
|
Loading…
Reference in New Issue
Block a user