To directly answer your question, if the column REG_DATE is (as it should be) defined as a DATE, then it will, as all of the comments have said, be stored in oracle's internal binary format for DATEs.
And you supplied vaue of
TO_CHAR(SYSDATE,'FMmonth DD, YYYY')
will simply force in implied TO_DATE() function on the string that results from your use of TO_CHAR. That implied TO_DATE will use the format mask defined by the controlling setting of NLS_DATE_FORMAT. And if that mask does not match what you used in your TO_CHAR (and that is very unlikely) you will get an error.
SQL> create table my_table (id number,
2 fname varchar2(10),
3 reg_date date
4 );
Table created.
SQL>
SQL> insert into my_table (id,fname,reg_date)
2 values (1, 'abc', TO_CHAR(SYSDATE,'FMmonth DD, YYYY') );
values (1, 'abc', TO_CHAR(SYSDATE,'FMmonth DD, YYYY') )
*
ERROR at line 2:
ORA-01858: a non-numeric character was found where a numeric was expected
SQL> --
SQL> insert into my_table (id,fname,reg_date)
2 values (1, 'abc', SYSDATE);
1 row created.
SQL> --
SQL> select id,
2 fname,
3 reg_date,
4 to_char(reg_date,'FMmonth DD, YYYY') date1,
5 to_char(reg_date,'dd-MON-yyyy') date2,
6 to_char(reg_date,'yyyy-mm-dd hh24:mi:ss') date3
7 from my_table
8 ;
ID FNAME REG_DATE DATE1 DATE2 DATE3
--- ----- --------- ----------------- ----------- -------------------
1 abc 18-FEB-21 february 18, 2021 18-FEB-2021 2021-02-18 12:08:45
1 row selected.