|Thinking about understanding.|
1. 知る (しる) - this is a pretty basic vocabulary word that is usually learned relatively early. It means "to know," but knowing what tense to use when employing this one can be a little tricky at first. Most often when we want to use this in the positive to say that we know something, we use the progressive form - 知ってる.
A: Hurry up! The movie starts at 10.
B: Yeah, I know that.
When expressing an idea in the negative, however, we switch to future/present (not progressive) - 知らない
(It seems that 知ってない is grammatically correct, but it is much more rarely used).
A: What the hell is that idiot doing?!
B: No clue.
Also worth noting, a form of 知る is also used in the words for "acquaintance" and "get to know."
知り合い - acquaintance
知り合う - get to know (discover) someone;
How do you know her?
2. 分かる (わかる）- this is also a pretty basic word that will get a lot of use in daily life. It means "to understand," though it is also used to say that you know or don't know something. The natural use of it is something I am still trying to work out in some situations, but the good news is that its basic usage is usually fairly straightforward. Although sometimes used in its normal, dictionary form, I find that in the positive it is used pretty frequently in the past tense. I suppose this is because often when you know or understand something, it is because your mind has already done the processing of said knowledge. When? Just now.
A: Sorry for the trouble, but could you send me that report by tomorrow?
B: Ok, I understand.
In a recently meeting, I heard my boss use the present tense. He and a colleague were discussing some issue (legislation-related, perhaps?) and he said:
Yeah, I understand that but...
So I'm not exactly sure in which cases the present tense would be more correct or natural, but in my experience it's pretty common to hear people using the past tense when referring to something they know or understand.
I have also seen/heard use of the progressive tense: 分かってる. If anyone has any insights into any differences between these three forms, please feel free to leave a comment.
As for the negative, I have found that tenses are generally used as you would expect:
わからない(or わかってない) - "I don't know" or "I don't understand"
わからなかった - "I didn't know" or "I didn't understand"
Another usage, that took me a while to figure out, is the employment of わかった to indicate that you've figured out something. In English we have separate words for this idea, but in Japanese, わかる can also indicate the process of coming to understand something.
I easily figured out which car is his.
3. 理解する (りかいする) - this is one that I have seen fairly often and heard used on occasion, but I am not sure I understand the full nuance of it or how to identify the "correct" situations in which to use it. Checking a J-dictionary may give some insight. My gut feeling is that 理解する is most often used in more academic or technical situations, or those involving emotions. I think it is maybe similar to "comprehend" in English.
Because he's such a compassionate person, he always understands the feelings of those around him.
4. 了解する(りょうかい) - I believe this one has some similarities to 理解する, but it is also often used as an acknowledgement akin to "Roger that!" or "Gotcha!" I remember that when I hung out with Dylan, he would often use 「了解！」as a response. With this one, you can use it with or without the actual 「する」, though if you're aiming to be polite you should use 「ます」form. As far as I'm aware, you can use present or past tense to mean the same thing (similar to わかる, perhaps).
A: Let's leave on Friday.
Nailing down how to properly and naturally use Japanese words and phrases (and grammar, and all that jazz) can be a challenge, and certainly takes time. But I find the discovery and pursuit of understanding to be quite interesting (I daresay fun, at times). I'm going to keep working at it, and meanwhile if you have any thoughts or insights or questions about any of the above, please share in the comments.
Edit: As Joe points out in the comments, 存知（ぞんじ） is another good one that you may come across. It can be used as a ～る verb （存じる), and it is often used in keigo (ご存知ですか？ - Do you understand/know?).
Update: LiY adds another good one in the comments:
"Just to add another word into the mix: 承知（しょうち；know, be aware）.
This was popularized in the recent TV drama 家政婦ミタ in which the main character, ミタ, a house maid, would respond to all requests made to her with 「承知しました」. This is used in much the same way as 「わかりました」but I'm guessing it's more polite, or more appropriate for their relationship (maid & clients)."