Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "memory_routines.h"
- #include "ds_routines.h"
- namespace structures {
- byte & MemoryRoutines::byteSet(byte & B)
- {
- B = MAX_BYTE;
- return B;
- }
- byte & MemoryRoutines::byteReset(byte & B)
- {
- B ^= B;
- return B;
- }
- byte & MemoryRoutines::byteXOR(byte & B)
- {
- for (int i = 0; i < 8; i++)
- {
- B ^= 1 << i;
- }
- return B;
- }
- byte & MemoryRoutines::byteSHL(byte & B)
- {
- B <<= 1;
- return B;
- }
- byte & MemoryRoutines::byteSHR(byte & B)
- {
- B >>= 1;
- return B;
- }
- bool MemoryRoutines::byteNthBitGet(byte & B, int n)
- {
- DSRoutines::rangeCheck(n, 8);
- return (B >> n) & 1;
- }
- byte & MemoryRoutines::byteNthBitTo0(byte & B, int n)
- {
- DSRoutines::rangeCheck(n, 8);
- B &= 0 << n;
- return B;
- }
- byte & MemoryRoutines::byteNthBitTo1(byte & B, int n)
- {
- DSRoutines::rangeCheck(n, 8);
- B |= 1 << n;
- return B;
- }
- byte & MemoryRoutines::byteNthBitToggle(byte & B, int n)
- {
- DSRoutines::rangeCheck(n, 8);
- B ^= 1 << n;
- return B;
- }
- MemoryRoutines::MemoryRoutines()
- {
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement