Example #1
0
//LINHARES START
void hl_write_linhares(hardlocation* hl, bitstring* data) {
	int i, a;
	for(i=0; i<bs_dimension; i++) {
		//writing only the difference may give us more space 
		a = bs_bitsign(hl->address,i)^bs_bitsign(data, i);
		if (a > 0) {
			if (hl->adder[i] < 127) hl->adder[i]++;
			else printf("@@ WARNING WARNING!\n");
		} 
	}
	hl->num_items++;
}
Example #2
0
void hl_write(hardlocation* hl, bitstring* data) {
	int i, a;
	for(i=0; i<bs_dimension; i++) {
		a = bs_bitsign(data, i);
		if (a > 0) {
			if (hl->adder[i] < 127) hl->adder[i]++;
			else printf("@@ WARNING adder[%d] overflow!\n", i);
		} else if (a < 0) {
			if (hl->adder[i] > -127) hl->adder[i]--;
			else printf("@@ WARNING adder[%d] overflow!\n", i);
		}
	}
}
Example #3
0
void hl_write(adder_t* adder, bitstring* data) {
    int i, a;
    for(i=0; i<bs_dimension; i++) {
        a = bs_bitsign(data, i);
        if (a > 0) {
            if (adder[i] < 127) adder[i]++;
            else printf("@@ WARNING WARNING!\n");
        } else if (a < 0) {
            if (adder[i] > -127) adder[i]--;
            else printf("@@ WARNING WARNING!\n");
        }
    }
}