How can I design a Caesar cipher encrypter and decrypter without using Non-programmable circuit components?
Although simple in software with the mod function with a For Loop from 1 to n in discrete logic, it is not trivial.  We see that an Adder is useful to rotate the "Code" for an Ascii character but we can also use memory as this would not occupy much.  However try to define the basic truth table for timing each of the iterative logic in a high level function map then consider a memory lookup table rather than an adder that must check for non alphanumberic symbols gets tricky.

You may consider all the options for architecture.

Full implementation could be targetted for an FPGA.

This is a not a complete solution, but one has to start somewhere and define all the assumptions first how it works , rather than dump a primitive block diagram and say help.


Valid ascii character table,
character boundaries,
rules to include only alphanumberic characters ,
and leave other valid characters as is. such as :/;[]{}


One can choose architiecture or consider all options from Full Adder (FA) to Memory Lookup Table for each character. 

One must determine if the input is valid for each string, character and reserve memory for this length limited to some max value. 

Then each character is "driven" to compare if eligible for ROT-N then excute and Write the result Concatenated to the result string, then check if the string LEN down counter has reached zero.

Logic Functions must be defined at a high level then broken down into smaller rules.  Here is one way using colour mapped functions and a truth table for a high level algorithm.



Caesar Cipher is one of the weakest forms of encryption with very low entropy.

But then it was used by Julius so it has  historical interest for beginners.

Since it readily found on the web, I won't give any redundant info.



ROT-13 is a special case used in the Window registry where full path names are stored for minor reasons with obfuscation.    

Input   ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz      
Output  NOPQRSTUVWXYZABCDEFGHIJKLMnopqrstuvwxyzabcdefghijklm     


https://en.wikipedia.org/wiki/ROT13

Jul qvq gur puvpxra pebff gur ebnq?
Gb trg gb gur bgure fvqr!     

https://learncryptography.com/classical-encryption/caesar-cipher