In coding theory, systematic and non-systematic codes refer to ways of organizing the bits of a message in a code.
Systematic code: If the check bits (the redundancy bits added with message bits to create codeword) and the message bits can be separated or identified from the codewords then it is called systematic code. Examples of systematic codes include Hamming codes, Reed-Solomon codes, and convolutional codes.
Non-systematic code: If the check bits (the redundancy bits added with message bits to create codeword) and the message bits can not be separated or identified from the codewords then it is called non-systematic code. They are mixed in the block of the codeword. Examples of non-systematic codes include cyclic codes and turbo codes.