more implementation of basic instructions